@ifc-lite/wasm 1.16.1 → 1.16.2

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/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "IFC-Lite Contributors"
6
6
  ],
7
7
  "description": "WebAssembly bindings for IFC-Lite",
8
- "version": "1.16.1",
8
+ "version": "1.16.2",
9
9
  "license": "MPL-2.0",
10
10
  "repository": {
11
11
  "type": "git",
package/pkg/ifc-lite.d.ts CHANGED
@@ -412,6 +412,11 @@ export class IfcAPI {
412
412
  * Returns a collection of instanced geometries with pointer access.
413
413
  */
414
414
  parseToGpuInstancedGeometry(content: string): GpuInstancedGeometryCollection;
415
+ /**
416
+ * Process instanced geometry for a subset of pre-scanned entities.
417
+ * Takes raw bytes and pre-pass data from buildPrePassOnce.
418
+ */
419
+ processInstancedGeometryBatch(data: Uint8Array, jobs_flat: Uint32Array, unit_scale: number, rtc_x: number, rtc_y: number, rtc_z: number, needs_shift: boolean, style_ids: Uint32Array, style_colors: Uint8Array): InstancedMeshCollection;
415
420
  /**
416
421
  * Parse IFC file with zero-copy mesh data
417
422
  * Maximum performance - returns mesh with direct memory access
@@ -1068,6 +1073,7 @@ export interface InitOutput {
1068
1073
  readonly ifcapi_parseToGpuInstancedGeometry: (a: number, b: number, c: number) => number;
1069
1074
  readonly ifcapi_parseZeroCopy: (a: number, b: number, c: number) => number;
1070
1075
  readonly ifcapi_processGeometryBatch: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number, o: number, p: number, q: number, r: number, s: number, t: number) => number;
1076
+ readonly ifcapi_processInstancedGeometryBatch: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number, m: number, n: number) => number;
1071
1077
  readonly ifcapi_scanEntitiesFast: (a: number, b: number, c: number) => number;
1072
1078
  readonly ifcapi_scanEntitiesFastBytes: (a: number, b: number, c: number) => number;
1073
1079
  readonly ifcapi_scanGeometryEntitiesFast: (a: number, b: number, c: number) => number;
@@ -1177,9 +1183,9 @@ export interface InitOutput {
1177
1183
  readonly profileentryjs_expressId: (a: number) => number;
1178
1184
  readonly symboliccircle_expressId: (a: number) => number;
1179
1185
  readonly __wbg_gpuinstancedgeometryref_free: (a: number, b: number) => void;
1180
- readonly __wasm_bindgen_func_elem_1131: (a: number, b: number, c: number) => void;
1181
- readonly __wasm_bindgen_func_elem_1130: (a: number, b: number) => void;
1182
- readonly __wasm_bindgen_func_elem_1173: (a: number, b: number, c: number, d: number) => void;
1186
+ readonly __wasm_bindgen_func_elem_1130: (a: number, b: number, c: number) => void;
1187
+ readonly __wasm_bindgen_func_elem_1129: (a: number, b: number) => void;
1188
+ readonly __wasm_bindgen_func_elem_1169: (a: number, b: number, c: number, d: number) => void;
1183
1189
  readonly __wbindgen_export: (a: number) => void;
1184
1190
  readonly __wbindgen_export2: (a: number, b: number, c: number) => void;
1185
1191
  readonly __wbindgen_export3: (a: number, b: number) => number;
package/pkg/ifc-lite.js CHANGED
@@ -212,12 +212,12 @@ if (!('encodeInto' in cachedTextEncoder)) {
212
212
 
213
213
  let WASM_VECTOR_LEN = 0;
214
214
 
215
- function __wasm_bindgen_func_elem_1131(arg0, arg1, arg2) {
216
- wasm.__wasm_bindgen_func_elem_1131(arg0, arg1, addHeapObject(arg2));
215
+ function __wasm_bindgen_func_elem_1130(arg0, arg1, arg2) {
216
+ wasm.__wasm_bindgen_func_elem_1130(arg0, arg1, addHeapObject(arg2));
217
217
  }
218
218
 
219
- function __wasm_bindgen_func_elem_1173(arg0, arg1, arg2, arg3) {
220
- wasm.__wasm_bindgen_func_elem_1173(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
219
+ function __wasm_bindgen_func_elem_1169(arg0, arg1, arg2, arg3) {
220
+ wasm.__wasm_bindgen_func_elem_1169(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
221
221
  }
222
222
 
223
223
  const GeoReferenceJsFinalization = (typeof FinalizationRegistry === 'undefined')
@@ -1407,6 +1407,32 @@ export class IfcAPI {
1407
1407
  const ret = wasm.ifcapi_parseToGpuInstancedGeometry(this.__wbg_ptr, ptr0, len0);
1408
1408
  return GpuInstancedGeometryCollection.__wrap(ret);
1409
1409
  }
1410
+ /**
1411
+ * Process instanced geometry for a subset of pre-scanned entities.
1412
+ * Takes raw bytes and pre-pass data from buildPrePassOnce.
1413
+ * @param {Uint8Array} data
1414
+ * @param {Uint32Array} jobs_flat
1415
+ * @param {number} unit_scale
1416
+ * @param {number} rtc_x
1417
+ * @param {number} rtc_y
1418
+ * @param {number} rtc_z
1419
+ * @param {boolean} needs_shift
1420
+ * @param {Uint32Array} style_ids
1421
+ * @param {Uint8Array} style_colors
1422
+ * @returns {InstancedMeshCollection}
1423
+ */
1424
+ processInstancedGeometryBatch(data, jobs_flat, unit_scale, rtc_x, rtc_y, rtc_z, needs_shift, style_ids, style_colors) {
1425
+ const ptr0 = passArray8ToWasm0(data, wasm.__wbindgen_export3);
1426
+ const len0 = WASM_VECTOR_LEN;
1427
+ const ptr1 = passArray32ToWasm0(jobs_flat, wasm.__wbindgen_export3);
1428
+ const len1 = WASM_VECTOR_LEN;
1429
+ const ptr2 = passArray32ToWasm0(style_ids, wasm.__wbindgen_export3);
1430
+ const len2 = WASM_VECTOR_LEN;
1431
+ const ptr3 = passArray8ToWasm0(style_colors, wasm.__wbindgen_export3);
1432
+ const len3 = WASM_VECTOR_LEN;
1433
+ const ret = wasm.ifcapi_processInstancedGeometryBatch(this.__wbg_ptr, ptr0, len0, ptr1, len1, unit_scale, rtc_x, rtc_y, rtc_z, needs_shift, ptr2, len2, ptr3, len3);
1434
+ return InstancedMeshCollection.__wrap(ret);
1435
+ }
1410
1436
  /**
1411
1437
  * Parse IFC file with zero-copy mesh data
1412
1438
  * Maximum performance - returns mesh with direct memory access
@@ -3049,7 +3075,7 @@ function __wbg_get_imports() {
3049
3075
  const a = state0.a;
3050
3076
  state0.a = 0;
3051
3077
  try {
3052
- return __wasm_bindgen_func_elem_1173(a, state0.b, arg0, arg1);
3078
+ return __wasm_bindgen_func_elem_1169(a, state0.b, arg0, arg1);
3053
3079
  } finally {
3054
3080
  state0.a = a;
3055
3081
  }
@@ -3161,9 +3187,9 @@ function __wbg_get_imports() {
3161
3187
  const ret = BigInt.asUintN(64, arg0);
3162
3188
  return addHeapObject(ret);
3163
3189
  };
3164
- imports.wbg.__wbindgen_cast_8410bcb836a2825d = function(arg0, arg1) {
3165
- // Cast intrinsic for `Closure(Closure { dtor_idx: 145, function: Function { arguments: [Externref], shim_idx: 146, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
3166
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_1130, __wasm_bindgen_func_elem_1131);
3190
+ imports.wbg.__wbindgen_cast_69d24e7bda2eee11 = function(arg0, arg1) {
3191
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 147, function: Function { arguments: [Externref], shim_idx: 148, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
3192
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_1129, __wasm_bindgen_func_elem_1130);
3167
3193
  return addHeapObject(ret);
3168
3194
  };
3169
3195
  imports.wbg.__wbindgen_cast_d6cd19b81560fd6e = function(arg0) {
Binary file