@base2datadesign/viewer-kit 0.2.0 → 0.2.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/engine/ViewerEngine.d.ts +5 -1
- package/dist/engine/ViewerEngine.d.ts.map +1 -1
- package/dist/engine/ViewerEngine.js +89 -6
- package/dist/engine/types.d.ts +44 -0
- package/dist/engine/types.d.ts.map +1 -1
- package/dist/exports/download.d.ts +2 -0
- package/dist/exports/download.d.ts.map +1 -0
- package/dist/exports/download.js +10 -0
- package/dist/exports/three-export.d.ts +4 -0
- package/dist/exports/three-export.d.ts.map +1 -0
- package/dist/exports/three-export.js +25 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/materials/architectural.js +1 -1
- package/dist/systems/debugSystem.d.ts.map +1 -1
- package/dist/systems/debugSystem.js +188 -35
- package/dist/systems/environmentSystem.d.ts +1 -0
- package/dist/systems/environmentSystem.d.ts.map +1 -1
- package/dist/systems/environmentSystem.js +26 -5
- package/dist/systems/lightingSystem.d.ts +2 -0
- package/dist/systems/lightingSystem.d.ts.map +1 -1
- package/dist/systems/lightingSystem.js +15 -0
- package/dist/systems/postfxSystem.d.ts +3 -0
- package/dist/systems/postfxSystem.d.ts.map +1 -1
- package/dist/systems/postfxSystem.js +44 -6
- package/dist/uploads/grasshopper.d.ts +12 -0
- package/dist/uploads/grasshopper.d.ts.map +1 -0
- package/dist/uploads/grasshopper.js +113 -0
- package/dist/uploads/index.d.ts +8 -0
- package/dist/uploads/index.d.ts.map +1 -0
- package/dist/uploads/index.js +29 -0
- package/dist/uploads/mesh.d.ts +8 -0
- package/dist/uploads/mesh.d.ts.map +1 -0
- package/dist/uploads/mesh.js +109 -0
- package/dist/uploads/rhino3dm.d.ts +7 -0
- package/dist/uploads/rhino3dm.d.ts.map +1 -0
- package/dist/uploads/rhino3dm.js +33 -0
- package/dist/uploads/types.d.ts +67 -0
- package/dist/uploads/types.d.ts.map +1 -0
- package/dist/uploads/types.js +1 -0
- package/package.json +4 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type { CameraState, ViewerCreateOptions, ViewerHandle, ViewerSnapshot } from "./types";
|
|
1
|
+
import type { CameraState, RenderPresetDefinition, ViewerCreateOptions, ViewerHandle, ViewerSnapshot } from "./types";
|
|
2
2
|
export declare class ViewerEngine {
|
|
3
|
+
private static readonly RUNTIME_PRESET_ID;
|
|
3
4
|
private container;
|
|
4
5
|
private renderer;
|
|
5
6
|
private scene;
|
|
@@ -10,6 +11,7 @@ export declare class ViewerEngine {
|
|
|
10
11
|
private lightingSystem;
|
|
11
12
|
private postFxSystem;
|
|
12
13
|
private debugSystem;
|
|
14
|
+
private usePostprocessing;
|
|
13
15
|
private presets;
|
|
14
16
|
private presetId;
|
|
15
17
|
private running;
|
|
@@ -21,11 +23,13 @@ export declare class ViewerEngine {
|
|
|
21
23
|
resize(): void;
|
|
22
24
|
dispose(): void;
|
|
23
25
|
setPreset(presetId: string): void;
|
|
26
|
+
setRuntimePreset(preset: RenderPresetDefinition): void;
|
|
24
27
|
setSceneRoot(root: unknown): void;
|
|
25
28
|
setCamera(state: Partial<CameraState>): void;
|
|
26
29
|
getCameraState(): CameraState;
|
|
27
30
|
capturePng(): Promise<Blob>;
|
|
28
31
|
getSnapshot(): ViewerSnapshot;
|
|
32
|
+
private getDebugInfo;
|
|
29
33
|
private applyPreset;
|
|
30
34
|
private resolvePreset;
|
|
31
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewerEngine.d.ts","sourceRoot":"","sources":["../../src/engine/ViewerEngine.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,WAAW,
|
|
1
|
+
{"version":3,"file":"ViewerEngine.d.ts","sourceRoot":"","sources":["../../src/engine/ViewerEngine.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,WAAW,EAAiB,sBAAsB,EAAE,mBAAmB,EAAmB,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAQrK,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAiB;IAE1D,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,SAAS,CAAc;IAE/B,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,iBAAiB,CAAU;IAEnC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,cAAc,CAAuB;gBAEjC,OAAO,EAAE,mBAAmB;IAgDxC,SAAS,IAAI,YAAY;IAkBzB,KAAK,IAAI,IAAI;IAgBb,IAAI,IAAI,IAAI;IAQZ,MAAM,IAAI,IAAI;IASd,OAAO,IAAI,IAAI;IAef,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIjC,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAStD,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAuBjC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;IAc5C,cAAc,IAAI,WAAW;IAQvB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCjC,WAAW,IAAI,cAAc;IAe7B,OAAO,CAAC,YAAY;IAuCpB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,aAAa;CAKtB"}
|
|
@@ -7,6 +7,7 @@ import { LightingSystem } from "../systems/lightingSystem";
|
|
|
7
7
|
import { PostFxSystem } from "../systems/postfxSystem";
|
|
8
8
|
import { DebugSystem } from "../systems/debugSystem";
|
|
9
9
|
export class ViewerEngine {
|
|
10
|
+
static RUNTIME_PRESET_ID = "__runtime__";
|
|
10
11
|
container;
|
|
11
12
|
renderer;
|
|
12
13
|
scene;
|
|
@@ -17,13 +18,15 @@ export class ViewerEngine {
|
|
|
17
18
|
lightingSystem;
|
|
18
19
|
postFxSystem;
|
|
19
20
|
debugSystem;
|
|
21
|
+
usePostprocessing;
|
|
20
22
|
presets;
|
|
21
23
|
presetId;
|
|
22
24
|
running = false;
|
|
23
25
|
animationFrame = null;
|
|
24
26
|
constructor(options) {
|
|
25
27
|
this.container = options.container;
|
|
26
|
-
|
|
28
|
+
const basePresets = options.presets ?? DEFAULT_PRESETS;
|
|
29
|
+
this.presets = { ...basePresets };
|
|
27
30
|
this.presetId = options.presetId ?? DEFAULT_PRESET_ID;
|
|
28
31
|
const width = this.container.clientWidth || 1;
|
|
29
32
|
const height = this.container.clientHeight || 1;
|
|
@@ -51,6 +54,8 @@ export class ViewerEngine {
|
|
|
51
54
|
this.lightingSystem = new LightingSystem(this.scene);
|
|
52
55
|
this.postFxSystem = new PostFxSystem(this.renderer, this.scene, this.camera);
|
|
53
56
|
this.debugSystem = new DebugSystem(this.scene);
|
|
57
|
+
this.usePostprocessing = options.usePostprocessing ?? true;
|
|
58
|
+
this.postFxSystem.resize(width, height);
|
|
54
59
|
this.applyPreset(this.presetId);
|
|
55
60
|
}
|
|
56
61
|
getHandle() {
|
|
@@ -60,11 +65,14 @@ export class ViewerEngine {
|
|
|
60
65
|
resize: () => this.resize(),
|
|
61
66
|
dispose: () => this.dispose(),
|
|
62
67
|
setPreset: (presetId) => this.setPreset(presetId),
|
|
68
|
+
setRuntimePreset: (preset) => this.setRuntimePreset(preset),
|
|
63
69
|
setSceneRoot: (root) => this.setSceneRoot(root),
|
|
64
70
|
setCamera: (state) => this.setCamera(state),
|
|
65
71
|
getCameraState: () => this.getCameraState(),
|
|
66
72
|
capturePng: () => this.capturePng(),
|
|
67
73
|
getSnapshot: () => this.getSnapshot(),
|
|
74
|
+
getDebugInfo: () => this.getDebugInfo(),
|
|
75
|
+
getCanvas: () => this.renderer.domElement,
|
|
68
76
|
};
|
|
69
77
|
}
|
|
70
78
|
start() {
|
|
@@ -75,7 +83,12 @@ export class ViewerEngine {
|
|
|
75
83
|
if (!this.running)
|
|
76
84
|
return;
|
|
77
85
|
this.controls.update();
|
|
78
|
-
this.
|
|
86
|
+
if (this.usePostprocessing) {
|
|
87
|
+
this.postFxSystem.render();
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
this.renderer.render(this.scene, this.camera);
|
|
91
|
+
}
|
|
79
92
|
this.animationFrame = requestAnimationFrame(loop);
|
|
80
93
|
};
|
|
81
94
|
this.animationFrame = requestAnimationFrame(loop);
|
|
@@ -111,11 +124,35 @@ export class ViewerEngine {
|
|
|
111
124
|
setPreset(presetId) {
|
|
112
125
|
this.applyPreset(presetId);
|
|
113
126
|
}
|
|
127
|
+
setRuntimePreset(preset) {
|
|
128
|
+
const normalized = {
|
|
129
|
+
...preset,
|
|
130
|
+
id: ViewerEngine.RUNTIME_PRESET_ID,
|
|
131
|
+
};
|
|
132
|
+
this.presets[ViewerEngine.RUNTIME_PRESET_ID] = normalized;
|
|
133
|
+
this.applyPreset(ViewerEngine.RUNTIME_PRESET_ID);
|
|
134
|
+
}
|
|
114
135
|
setSceneRoot(root) {
|
|
115
136
|
this.rootGroup.clear();
|
|
116
|
-
|
|
117
|
-
|
|
137
|
+
const object3d = root;
|
|
138
|
+
if (object3d && object3d.isObject3D) {
|
|
139
|
+
this.rootGroup.add(object3d);
|
|
140
|
+
const bounds = new THREE.Box3().setFromObject(object3d);
|
|
141
|
+
if (!bounds.isEmpty()) {
|
|
142
|
+
const size = new THREE.Vector3();
|
|
143
|
+
bounds.getSize(size);
|
|
144
|
+
const maxDim = Math.max(size.x, size.y, size.z);
|
|
145
|
+
if (Number.isFinite(maxDim) && maxDim > 0) {
|
|
146
|
+
const far = Math.max(500, maxDim * 10);
|
|
147
|
+
if (this.camera.far !== far) {
|
|
148
|
+
this.camera.far = far;
|
|
149
|
+
this.camera.updateProjectionMatrix();
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
118
153
|
}
|
|
154
|
+
// Ensure the render loop is running after a scene update.
|
|
155
|
+
this.start();
|
|
119
156
|
}
|
|
120
157
|
setCamera(state) {
|
|
121
158
|
if (state.position) {
|
|
@@ -182,13 +219,59 @@ export class ViewerEngine {
|
|
|
182
219
|
postfx: this.postFxSystem.getState(),
|
|
183
220
|
};
|
|
184
221
|
}
|
|
222
|
+
getDebugInfo() {
|
|
223
|
+
const envState = this.environmentSystem.getState();
|
|
224
|
+
const postfxState = this.postFxSystem.getState();
|
|
225
|
+
const renderInfo = this.renderer.info.render;
|
|
226
|
+
const clearColor = new THREE.Color();
|
|
227
|
+
this.renderer.getClearColor(clearColor);
|
|
228
|
+
return {
|
|
229
|
+
presetId: this.presetId,
|
|
230
|
+
camera: this.getCameraState(),
|
|
231
|
+
canvas: {
|
|
232
|
+
width: this.renderer.domElement.width,
|
|
233
|
+
height: this.renderer.domElement.height,
|
|
234
|
+
clientWidth: this.renderer.domElement.clientWidth,
|
|
235
|
+
clientHeight: this.renderer.domElement.clientHeight,
|
|
236
|
+
},
|
|
237
|
+
renderer: {
|
|
238
|
+
toneMapping: String(this.renderer.toneMapping),
|
|
239
|
+
toneMappingExposure: this.renderer.toneMappingExposure,
|
|
240
|
+
outputColorSpace: String(this.renderer.outputColorSpace),
|
|
241
|
+
pixelRatio: this.renderer.getPixelRatio(),
|
|
242
|
+
clearColor: `#${clearColor.getHexString()}`,
|
|
243
|
+
clearAlpha: this.renderer.getClearAlpha(),
|
|
244
|
+
},
|
|
245
|
+
renderInfo: {
|
|
246
|
+
calls: renderInfo.calls,
|
|
247
|
+
triangles: renderInfo.triangles,
|
|
248
|
+
lines: renderInfo.lines,
|
|
249
|
+
points: renderInfo.points,
|
|
250
|
+
},
|
|
251
|
+
scene: {
|
|
252
|
+
children: this.scene.children.length,
|
|
253
|
+
rootChildren: this.rootGroup.children.length,
|
|
254
|
+
lights: this.scene.children.filter((child) => child?.isLight).length,
|
|
255
|
+
},
|
|
256
|
+
environment: envState,
|
|
257
|
+
postfx: postfxState,
|
|
258
|
+
};
|
|
259
|
+
}
|
|
185
260
|
applyPreset(presetId) {
|
|
186
261
|
const preset = this.resolvePreset(presetId);
|
|
187
262
|
this.presetId = preset.id;
|
|
188
|
-
|
|
263
|
+
const exposureOverride = preset.sky?.mode === "hdr"
|
|
264
|
+
? preset.sky.hdr?.exposure
|
|
265
|
+
: preset.sky?.mode === "cube"
|
|
266
|
+
? preset.sky.cube?.exposure
|
|
267
|
+
: undefined;
|
|
268
|
+
const rendererConfig = exposureOverride !== undefined
|
|
269
|
+
? { ...preset.renderer, toneMappingExposure: exposureOverride }
|
|
270
|
+
: preset.renderer;
|
|
271
|
+
applyRendererConfig(this.renderer, rendererConfig);
|
|
189
272
|
void this.environmentSystem.apply(preset);
|
|
190
273
|
this.lightingSystem.apply(preset);
|
|
191
|
-
this.postFxSystem.apply(preset.postfx);
|
|
274
|
+
this.postFxSystem.apply(this.usePostprocessing ? preset.postfx : undefined);
|
|
192
275
|
this.debugSystem.apply(preset);
|
|
193
276
|
}
|
|
194
277
|
resolvePreset(presetId) {
|
package/dist/engine/types.d.ts
CHANGED
|
@@ -108,6 +108,8 @@ export type PostFxConfig = {
|
|
|
108
108
|
radius?: number;
|
|
109
109
|
distanceFalloff?: number;
|
|
110
110
|
halfRes?: boolean;
|
|
111
|
+
quality?: "low" | "medium" | "high";
|
|
112
|
+
color?: string;
|
|
111
113
|
};
|
|
112
114
|
bloom?: {
|
|
113
115
|
enabled: boolean;
|
|
@@ -189,6 +191,45 @@ export type ViewerSnapshot = {
|
|
|
189
191
|
vignetteEnabled: boolean;
|
|
190
192
|
};
|
|
191
193
|
};
|
|
194
|
+
export type ViewerDebugInfo = {
|
|
195
|
+
presetId: string;
|
|
196
|
+
camera: CameraState;
|
|
197
|
+
canvas: {
|
|
198
|
+
width: number;
|
|
199
|
+
height: number;
|
|
200
|
+
clientWidth: number;
|
|
201
|
+
clientHeight: number;
|
|
202
|
+
};
|
|
203
|
+
renderer: {
|
|
204
|
+
toneMapping: string;
|
|
205
|
+
toneMappingExposure: number;
|
|
206
|
+
outputColorSpace: string;
|
|
207
|
+
pixelRatio: number;
|
|
208
|
+
clearColor: string;
|
|
209
|
+
clearAlpha: number;
|
|
210
|
+
};
|
|
211
|
+
renderInfo: {
|
|
212
|
+
calls: number;
|
|
213
|
+
triangles: number;
|
|
214
|
+
lines: number;
|
|
215
|
+
points: number;
|
|
216
|
+
};
|
|
217
|
+
scene: {
|
|
218
|
+
children: number;
|
|
219
|
+
rootChildren: number;
|
|
220
|
+
lights: number;
|
|
221
|
+
};
|
|
222
|
+
environment: {
|
|
223
|
+
mode: "none" | "gradient" | "hdr" | "cube";
|
|
224
|
+
backgroundEnabled: boolean;
|
|
225
|
+
lightingEnabled: boolean;
|
|
226
|
+
};
|
|
227
|
+
postfx: {
|
|
228
|
+
aoEnabled: boolean;
|
|
229
|
+
bloomEnabled: boolean;
|
|
230
|
+
vignetteEnabled: boolean;
|
|
231
|
+
};
|
|
232
|
+
};
|
|
192
233
|
export type CameraState = {
|
|
193
234
|
position: [number, number, number];
|
|
194
235
|
target: [number, number, number];
|
|
@@ -223,10 +264,13 @@ export type ViewerHandle = {
|
|
|
223
264
|
resize(): void;
|
|
224
265
|
dispose(): void;
|
|
225
266
|
setPreset(presetId: string): void;
|
|
267
|
+
setRuntimePreset(preset: RenderPresetDefinition): void;
|
|
226
268
|
setSceneRoot(root: unknown): void;
|
|
227
269
|
setCamera(state: Partial<CameraState>): void;
|
|
228
270
|
getCameraState(): CameraState;
|
|
229
271
|
capturePng(): Promise<Blob>;
|
|
230
272
|
getSnapshot(): ViewerSnapshot;
|
|
273
|
+
getDebugInfo?: () => ViewerDebugInfo;
|
|
274
|
+
getCanvas?: () => HTMLCanvasElement;
|
|
231
275
|
};
|
|
232
276
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/engine/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/engine/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../src/exports/download.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,QASxD"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function downloadBlob(blob, filename) {
|
|
2
|
+
const url = URL.createObjectURL(blob);
|
|
3
|
+
const link = document.createElement("a");
|
|
4
|
+
link.href = url;
|
|
5
|
+
link.download = filename;
|
|
6
|
+
document.body.appendChild(link);
|
|
7
|
+
link.click();
|
|
8
|
+
link.remove();
|
|
9
|
+
setTimeout(() => URL.revokeObjectURL(url), 0);
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"three-export.d.ts","sourceRoot":"","sources":["../../src/exports/three-export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,KAAK,CAAC;AAEzC,wBAAsB,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA6B9F"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export async function exportObject(object, format) {
|
|
2
|
+
if (format === "glb") {
|
|
3
|
+
const { GLTFExporter } = await import("three/examples/jsm/exporters/GLTFExporter.js");
|
|
4
|
+
const exporter = new GLTFExporter();
|
|
5
|
+
const arrayBuffer = await new Promise((resolve, reject) => {
|
|
6
|
+
exporter.parse(object, (result) => {
|
|
7
|
+
if (result instanceof ArrayBuffer) {
|
|
8
|
+
resolve(result);
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
try {
|
|
12
|
+
resolve(new TextEncoder().encode(JSON.stringify(result)).buffer);
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
reject(error);
|
|
16
|
+
}
|
|
17
|
+
}, (error) => reject(error), { binary: true });
|
|
18
|
+
});
|
|
19
|
+
return new Blob([arrayBuffer], { type: "model/gltf-binary" });
|
|
20
|
+
}
|
|
21
|
+
const { OBJExporter } = await import("three/examples/jsm/exporters/OBJExporter.js");
|
|
22
|
+
const exporter = new OBJExporter();
|
|
23
|
+
const text = exporter.parse(object);
|
|
24
|
+
return new Blob([text], { type: "text/plain" });
|
|
25
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { ViewerCreateOptions, ViewerHandle, ViewerSnapshot, CameraState, RenderPresetDefinition, PresetCatalog, LightingRigConfig, PostFxConfig, SceneExtrasConfig, SkyDefinition, SkyHdrConfig, SkyCubeConfig, } from "./engine/types";
|
|
1
|
+
export type { ViewerCreateOptions, ViewerHandle, ViewerSnapshot, CameraState, RenderPresetDefinition, PresetCatalog, LightingRigConfig, PostFxConfig, SceneExtrasConfig, SkyDefinition, SkyHdrConfig, SkyCubeConfig, ViewerDebugInfo, } from "./engine/types";
|
|
2
2
|
export { createViewer } from "./engine/createViewer";
|
|
3
3
|
export { DEFAULT_PRESET_ID, DEFAULT_PRESETS } from "./presets/defaults";
|
|
4
4
|
export { SCIENCE_PRESETS, SCIENCE_PRESET_SUMMARIES, SCIENCE_DEFAULT_PRESET_ID, buildViewerPresets, buildSciencePresets, } from "./presets/sciencePresets";
|
|
@@ -9,4 +9,8 @@ export { getMaterialCatalogue, findMaterial, listMaterialsByCategory } from "./m
|
|
|
9
9
|
export { getRenderMaterialMetadata } from "./materials/renderMetadata";
|
|
10
10
|
export { BASELINE_MATERIAL_PRESET_ID, MATERIAL_PRESET_DATA, listMaterialPresets, getMaterialPreset, resolveMaterialSlot, resolveMaterialPresetMaterials, } from "./materials/presets";
|
|
11
11
|
export { applyMaterialsToGroup, buildSurfaceMaterial, buildCatalogMaterial } from "./materials/architectural";
|
|
12
|
+
export * from "./uploads";
|
|
13
|
+
export { exportObject } from "./exports/three-export";
|
|
14
|
+
export type { ExportFormat } from "./exports/three-export";
|
|
15
|
+
export { downloadBlob } from "./exports/download";
|
|
12
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,sBAAsB,EACtB,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,sBAAsB,EACtB,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAC9G,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -6,3 +6,6 @@ export { getMaterialCatalogue, findMaterial, listMaterialsByCategory } from "./m
|
|
|
6
6
|
export { getRenderMaterialMetadata } from "./materials/renderMetadata";
|
|
7
7
|
export { BASELINE_MATERIAL_PRESET_ID, MATERIAL_PRESET_DATA, listMaterialPresets, getMaterialPreset, resolveMaterialSlot, resolveMaterialPresetMaterials, } from "./materials/presets";
|
|
8
8
|
export { applyMaterialsToGroup, buildSurfaceMaterial, buildCatalogMaterial } from "./materials/architectural";
|
|
9
|
+
export * from "./uploads";
|
|
10
|
+
export { exportObject } from "./exports/three-export";
|
|
11
|
+
export { downloadBlob } from "./exports/download";
|
|
@@ -149,7 +149,7 @@ export function applyMaterialsToGroup(group, materialsConfig, floorLevel, ceilin
|
|
|
149
149
|
: null;
|
|
150
150
|
group.updateMatrixWorld(true);
|
|
151
151
|
group.traverse((child) => {
|
|
152
|
-
if (!
|
|
152
|
+
if (!child?.isMesh)
|
|
153
153
|
return;
|
|
154
154
|
child.castShadow = true;
|
|
155
155
|
child.receiveShadow = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debugSystem.d.ts","sourceRoot":"","sources":["../../src/systems/debugSystem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAqB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"debugSystem.d.ts","sourceRoot":"","sources":["../../src/systems/debugSystem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAqB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAmJjF,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAwB;gBAE3B,KAAK,EAAE,KAAK,CAAC,KAAK;IAI9B,KAAK,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAwE3C,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,GAAG;IAKX,OAAO,CAAC,KAAK;CAmCd"}
|