gps-plus-slam-app-framework 1.1.0 → 1.2.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 (172) hide show
  1. package/dist/{app-selectors-CR9OWodf.d.ts → app-selectors-CcZ5UV-8.d.ts} +1 -1
  2. package/dist/ar/bresenham3d.d.ts +2 -0
  3. package/dist/ar/bresenham3d.js +81 -0
  4. package/dist/ar/camera-blit-capture.d.ts +1 -1
  5. package/dist/ar/camera-blit-capture.js +30 -2
  6. package/dist/ar/capability-checker.d.ts +1 -1
  7. package/dist/ar/capture-failure-tracker.d.ts +1 -1
  8. package/dist/ar/chromium-camera-access-workaround.d.ts +1 -1
  9. package/dist/ar/depth-sampler.d.ts +3 -3
  10. package/dist/ar/depth-sampler.js +63 -8
  11. package/dist/ar/depth-unprojection.d.ts +2 -0
  12. package/dist/ar/depth-unprojection.js +94 -0
  13. package/dist/ar/enable-gps-ar.d.ts +1 -1
  14. package/dist/ar/enable-gps-ar.js +1 -1
  15. package/dist/ar/frame-loop.d.ts +1 -1
  16. package/dist/ar/image-capture.d.ts +1 -1
  17. package/dist/ar/image-capture.js +2 -1
  18. package/dist/ar/index.d.ts +19 -16
  19. package/dist/ar/index.js +7 -4
  20. package/dist/ar/occupancy-grid.d.ts +2 -0
  21. package/dist/ar/occupancy-grid.js +164 -0
  22. package/dist/ar/replay-scene.d.ts +1 -1
  23. package/dist/ar/replay-scene.js +1 -1
  24. package/dist/ar/scene-node-names.d.ts +1 -1
  25. package/dist/ar/webxr-nue-basis.d.ts +2 -0
  26. package/dist/{webxr-nue-basis-BbdqhqY6.js → ar/webxr-nue-basis.js} +1 -1
  27. package/dist/ar/webxr-session.d.ts +3 -3
  28. package/dist/ar/webxr-session.js +1 -969
  29. package/dist/ar/xr-camera-texture.d.ts +1 -1
  30. package/dist/ar/xr-error-handler.d.ts +1 -1
  31. package/dist/ar/xr-frame-loop.d.ts +1 -1
  32. package/dist/{ar-types-isPsQptb.d.ts → ar-types-Dan1MVTi.d.ts} +28 -5
  33. package/dist/{ar-world-group-alignment-Dn4rQk_c.d.ts → ar-world-group-alignment-ColHB_5A.d.ts} +1 -1
  34. package/dist/bresenham3d-CFfd7n6B.d.ts +59 -0
  35. package/dist/{camera-blit-capture-75WWa9Xb.d.ts → camera-blit-capture-D5_mNhla.d.ts} +20 -0
  36. package/dist/core/index.d.ts +1 -1
  37. package/dist/{create-slam-app-store-B76AGaI0.d.ts → create-slam-app-store-qNXQ-tq5.d.ts} +5 -5
  38. package/dist/depth-sampler-Bhanfwla.d.ts +169 -0
  39. package/dist/depth-unprojection-Y6i_mJuT.d.ts +52 -0
  40. package/dist/{enable-gps-ar-DNbO0zbg.d.ts → enable-gps-ar-CapmADVN.d.ts} +4 -4
  41. package/dist/{file-system-TIsDfamK.d.ts → file-system-C_eqiEA8.d.ts} +1 -1
  42. package/dist/{frame-conversions-D2EYjeNa.d.ts → frame-conversions-BfsafGWR.d.ts} +1 -1
  43. package/dist/{fused-path-BdVHmDW9.d.ts → fused-path-DJoVu98b.d.ts} +1 -1
  44. package/dist/geo/h3-proximity.d.ts +1 -1
  45. package/dist/geo/index.d.ts +1 -1
  46. package/dist/{gps-anchor-CISLPQIb.d.ts → gps-anchor-dYeCvvp5.d.ts} +1 -1
  47. package/dist/{gps-ar-pose-sampler-BypXZUqC.d.ts → gps-ar-pose-sampler-DVb96iOy.d.ts} +1 -1
  48. package/dist/{gps-event-coordinator-BKVZbS1M.d.ts → gps-event-coordinator-BDIQde2x.d.ts} +3 -3
  49. package/dist/{image-capture-BXZUmj7j.d.ts → image-capture-DZ4HFRgS.d.ts} +15 -2
  50. package/dist/{index-BB2KEWbN2.d.ts → index-KJq2amHF.d.ts} +1 -1
  51. package/dist/index.d.ts +67 -64
  52. package/dist/index.js +7 -4
  53. package/dist/{leaflet-map-overlay-jNt-kcUr.d.ts → leaflet-map-overlay-6CJC-E1l.d.ts} +1 -1
  54. package/dist/{map-data-BGIBM5rv.d.ts → map-data-CkloBxIl.d.ts} +1 -1
  55. package/dist/{map-overlay-draw-DcGs9UV3.d.ts → map-overlay-draw-krOKwDAq.d.ts} +1 -1
  56. package/dist/{null-storage-backend-BPQJSaMw.d.ts → null-storage-backend-CxEjZHRW.d.ts} +2 -2
  57. package/dist/occupancy-grid-BRNRaPyT.d.ts +72 -0
  58. package/dist/{opfs-storage-backend-u4QKvgvP.d.ts → opfs-storage-backend-CjSAuqg_.d.ts} +2 -2
  59. package/dist/{persistence-middleware-xB5sTllJ.d.ts → persistence-middleware-DwyzgfWr.d.ts} +1 -1
  60. package/dist/{recording-options-BSFpBSZH.d.ts → recording-options-DJBXuMxV.d.ts} +12 -2
  61. package/dist/{recording-replayer-CTL2cUE0.d.ts → recording-replayer-BL-x-7k0.d.ts} +2 -2
  62. package/dist/{recording-slice-Cb888P6d.d.ts → recording-slice-89O07ebs.d.ts} +10 -2
  63. package/dist/{replay-engine-B-5GIZtc.d.ts → replay-engine-BRqszuQ9.d.ts} +1 -1
  64. package/dist/{replay-scene-DkNfldPh.d.ts → replay-scene-Bw58VL6p.d.ts} +3 -3
  65. package/dist/sensors/gps-error-handler.d.ts +1 -1
  66. package/dist/sensors/gps.d.ts +1 -1
  67. package/dist/sensors/index.d.ts +3 -3
  68. package/dist/sensors/permission-checker.d.ts +1 -1
  69. package/dist/state/app-selectors.d.ts +1 -1
  70. package/dist/state/combined-root-state.d.ts +1 -1
  71. package/dist/state/create-slam-app-store.d.ts +1 -1
  72. package/dist/state/gps-ar-pose-sampler.d.ts +3 -3
  73. package/dist/state/gps-event-coordinator.d.ts +1 -1
  74. package/dist/state/index.d.ts +16 -16
  75. package/dist/state/persistence-middleware.d.ts +1 -1
  76. package/dist/state/recording-options.d.ts +1 -1
  77. package/dist/state/recording-options.js +5 -3
  78. package/dist/state/recording-replayer.d.ts +2 -2
  79. package/dist/state/recording-slice.d.ts +1 -1
  80. package/dist/state/recording-slice.js +11 -2
  81. package/dist/state/replay-engine.d.ts +1 -1
  82. package/dist/state/store-subscribers.d.ts +2 -2
  83. package/dist/state/subscribe-to-selector.d.ts +1 -1
  84. package/dist/state/tracking-quality.d.ts +1 -1
  85. package/dist/state/tracking-quality.js +1 -1
  86. package/dist/state/tracking-slice.d.ts +1 -1
  87. package/dist/storage/file-system-utils.d.ts +1 -1
  88. package/dist/storage/file-system.d.ts +1 -1
  89. package/dist/storage/index.d.ts +8 -8
  90. package/dist/storage/null-storage-backend.d.ts +1 -1
  91. package/dist/storage/opfs-storage-backend.d.ts +1 -1
  92. package/dist/storage/opfs-storage.d.ts +1 -1
  93. package/dist/storage/storage-backend.d.ts +1 -1
  94. package/dist/storage/zip-export.d.ts +1 -1
  95. package/dist/storage/zip-reader.d.ts +1 -1
  96. package/dist/{storage-backend-yDSKafAQ.d.ts → storage-backend-C9HLFtgz.d.ts} +1 -1
  97. package/dist/{store-subscribers-swlbtg_z.d.ts → store-subscribers-rrkLkFTt.d.ts} +2 -2
  98. package/dist/{subscribe-to-selector--KQpgLXG.d.ts → subscribe-to-selector-CP3BKSbF.d.ts} +1 -1
  99. package/dist/test-utils/browser-mocks.d.ts +1 -1
  100. package/dist/test-utils/zip-round-trip-helpers.d.ts +1 -1
  101. package/dist/{tracking-slice-CDREeoZ_.d.ts → tracking-slice-CdK8c-8P.d.ts} +1 -1
  102. package/dist/types/ar-types.d.ts +2 -2
  103. package/dist/types/geo-types.d.ts +1 -1
  104. package/dist/types/index.d.ts +3 -3
  105. package/dist/utils/concurrency.d.ts +1 -1
  106. package/dist/utils/failure-tracker.d.ts +1 -1
  107. package/dist/utils/format-file-size.d.ts +1 -1
  108. package/dist/utils/fused-path.d.ts +1 -1
  109. package/dist/utils/index.d.ts +6 -6
  110. package/dist/utils/list-formatter.d.ts +1 -1
  111. package/dist/utils/logger.d.ts +1 -1
  112. package/dist/visualization/accuracy-circles.d.ts +1 -1
  113. package/dist/visualization/alignment-lerper.d.ts +1 -1
  114. package/dist/visualization/ar-world-group-alignment.d.ts +1 -1
  115. package/dist/visualization/camera-follower.d.ts +1 -1
  116. package/dist/visualization/css3d-renderer-manager.d.ts +1 -1
  117. package/dist/visualization/frame-conversions.d.ts +1 -1
  118. package/dist/visualization/frustum-visibility.d.ts +1 -1
  119. package/dist/visualization/gps-anchor.d.ts +1 -1
  120. package/dist/visualization/gps-compass-cubes.d.ts +1 -1
  121. package/dist/visualization/gps-event-markers.d.ts +1 -1
  122. package/dist/visualization/gps-event-markers.js +1 -1
  123. package/dist/visualization/hit-test-reticle.d.ts +1 -1
  124. package/dist/visualization/hit-test-reticle.js +1 -1
  125. package/dist/visualization/index.d.ts +18 -18
  126. package/dist/visualization/leaflet-map-overlay.d.ts +1 -1
  127. package/dist/visualization/lerp-utils.d.ts +1 -1
  128. package/dist/visualization/map-data.d.ts +1 -1
  129. package/dist/visualization/map-overlay-draw.d.ts +1 -1
  130. package/dist/visualization/map-overlay.d.ts +1 -1
  131. package/dist/visualization/three-dispose.d.ts +1 -1
  132. package/dist/visualization/vis-colors.d.ts +1 -1
  133. package/dist/{webxr-session-BnArFCew.d.ts → webxr-session-DtAG9srK.d.ts} +21 -10
  134. package/dist/webxr-session-QhcSSub5.js +1041 -0
  135. package/package.json +1 -1
  136. package/dist/depth-sampler-CqrkRr2N.d.ts +0 -108
  137. /package/dist/{accuracy-circles-DEKr0Hoh.d.ts → accuracy-circles-BpwWAs8G.d.ts} +0 -0
  138. /package/dist/{alignment-lerper-CCZJf-Xb.d.ts → alignment-lerper-Dm9G7JJO.d.ts} +0 -0
  139. /package/dist/{camera-follower-B-nS1sr6.d.ts → camera-follower-C2mwEn7c.d.ts} +0 -0
  140. /package/dist/{capability-checker-BTCmZRL4.d.ts → capability-checker-CQXJHxXg.d.ts} +0 -0
  141. /package/dist/{capture-failure-tracker-D4HYJNOj.d.ts → capture-failure-tracker-CUeU3L_M.d.ts} +0 -0
  142. /package/dist/{chromium-camera-access-workaround-MifIwK9x.d.ts → chromium-camera-access-workaround-Jqbn0apH.d.ts} +0 -0
  143. /package/dist/{concurrency-Bsmv53qw.d.ts → concurrency-CO1FQvs3.d.ts} +0 -0
  144. /package/dist/{css3d-renderer-manager-EDED3nvg.d.ts → css3d-renderer-manager-ptu_t3B3.d.ts} +0 -0
  145. /package/dist/{failure-tracker-D7ELffm0.d.ts → failure-tracker-Cn8Fo9D4.d.ts} +0 -0
  146. /package/dist/{file-system-utils-BH6uIs2i.d.ts → file-system-utils-DyAmcuvX.d.ts} +0 -0
  147. /package/dist/{format-file-size-B7gJb3Md.d.ts → format-file-size-CLCZz3lC.d.ts} +0 -0
  148. /package/dist/{frame-loop-BTeRpDm4.d.ts → frame-loop-CMewS8cY.d.ts} +0 -0
  149. /package/dist/{frustum-visibility-DGnJqls0.d.ts → frustum-visibility-CmI96ESS.d.ts} +0 -0
  150. /package/dist/{geo-types-clgzl8b5.d.ts → geo-types-SaPnIEUM.d.ts} +0 -0
  151. /package/dist/{gps-B7AlMPz5.d.ts → gps-VuezJWK3.d.ts} +0 -0
  152. /package/dist/{gps-compass-cubes-Ys6Hf1nc.d.ts → gps-compass-cubes-BM1uGiYV.d.ts} +0 -0
  153. /package/dist/{gps-error-handler-BLDhUlw5.d.ts → gps-error-handler-CJl_2MVm.d.ts} +0 -0
  154. /package/dist/{gps-event-markers-BlHq3jYV.d.ts → gps-event-markers-Dc9FT-q1.d.ts} +0 -0
  155. /package/dist/{h3-proximity-DJnghtir.d.ts → h3-proximity-I1msGPgE.d.ts} +0 -0
  156. /package/dist/{hit-test-reticle-BGXOxrUh.d.ts → hit-test-reticle-BEzEybxZ.d.ts} +0 -0
  157. /package/dist/{index--ldLph4V.d.ts → index-CF05QV2m.d.ts} +0 -0
  158. /package/dist/{lerp-utils-DNcSmKVX.d.ts → lerp-utils-BpV-0Dtk.d.ts} +0 -0
  159. /package/dist/{list-formatter-CsqcU4v5.d.ts → list-formatter-RRcBe8Vg.d.ts} +0 -0
  160. /package/dist/{logger-BZ44Dhd3.d.ts → logger-BEHXsnnq.d.ts} +0 -0
  161. /package/dist/{map-overlay-yrFsUtGv.d.ts → map-overlay-bcogY5fK.d.ts} +0 -0
  162. /package/dist/{opfs-storage-LsLY6VZV.d.ts → opfs-storage-DYm8WHq7.d.ts} +0 -0
  163. /package/dist/{permission-checker-CfV7INCa.d.ts → permission-checker-GpAiSCwd.d.ts} +0 -0
  164. /package/dist/{scene-node-names-IHW7HR4S.d.ts → scene-node-names-Bu0S66H1.d.ts} +0 -0
  165. /package/dist/{three-dispose-WTBAfaWU.d.ts → three-dispose-D950t71B.d.ts} +0 -0
  166. /package/dist/{vis-colors-Djnyg_UH.d.ts → vis-colors-D6omC64K.d.ts} +0 -0
  167. /package/dist/{index-22v8MXJX.d.ts → webxr-nue-basis-CqKQmZzT.d.ts} +0 -0
  168. /package/dist/{xr-camera-texture-BU5YvKAM.d.ts → xr-camera-texture-DBwCaKTd.d.ts} +0 -0
  169. /package/dist/{xr-error-handler-DcUFshNF.d.ts → xr-error-handler-C0AQRmxs.d.ts} +0 -0
  170. /package/dist/{xr-frame-loop-BKckC7xC.d.ts → xr-frame-loop-BtYytZJg.d.ts} +0 -0
  171. /package/dist/{zip-export-C0_ErAqT.d.ts → zip-export-D_5HAvFz.d.ts} +0 -0
  172. /package/dist/{zip-reader-B2lzN8F5.d.ts → zip-reader-DSEXt7K6.d.ts} +0 -0
@@ -0,0 +1,164 @@
1
+ import { createDepthUnprojector } from "./depth-unprojection.js";
2
+ import { bresenham3d } from "./bresenham3d.js";
3
+ //#region ../src/ar/occupancy-grid.ts
4
+ var OccupancyGrid = class {
5
+ cellSizeM;
6
+ carveStopCells;
7
+ cells = /* @__PURE__ */ new Map();
8
+ constructor(options) {
9
+ const cellSizeM = options?.cellSizeM ?? .15;
10
+ const carveStopCells = options?.carveStopCells ?? 2;
11
+ if (!Number.isFinite(cellSizeM) || cellSizeM <= 0) throw new RangeError(`cellSizeM must be a positive number, got ${cellSizeM}`);
12
+ if (!Number.isSafeInteger(carveStopCells) || carveStopCells < 0) throw new RangeError(`carveStopCells must be a non-negative integer, got ${carveStopCells}`);
13
+ this.cellSizeM = cellSizeM;
14
+ this.carveStopCells = carveStopCells;
15
+ }
16
+ /** Number of occupied cells. */
17
+ get size() {
18
+ return this.cells.size;
19
+ }
20
+ /**
21
+ * Fold one depth sample into the grid: unproject each point, carve free
22
+ * space from the camera cell to the point cell, then count the point's
23
+ * cell as occupied. Points that cannot be unprojected (no
24
+ * projectionMatrix on old recordings, invalid depth/coords) are skipped.
25
+ *
26
+ * Carving and incrementing run as two separate passes over the sample's
27
+ * points: all rays are carved first, then every endpoint is incremented.
28
+ * A single interleaved pass would be order-dependent — a deeper point's
29
+ * carve could erase the endpoint a nearer point added earlier in the same
30
+ * sample. Splitting the passes makes the result deterministic and lets an
31
+ * endpoint observed within a sample survive other rays in that same
32
+ * sample. (Deeper-carves-nearer still applies ACROSS samples: a later
33
+ * sample's ray carves an earlier sample's endpoint as before.)
34
+ *
35
+ * @returns the number of points actually added.
36
+ */
37
+ addSample(sample) {
38
+ if (!isFiniteTriple(sample.cameraPos)) return 0;
39
+ const unprojector = createDepthUnprojector(sample.cameraPos, sample.cameraRot, sample.projectionMatrix);
40
+ if (!unprojector) return 0;
41
+ const cameraCell = this.cellForPosition(sample.cameraPos);
42
+ const endpoints = [];
43
+ for (const point of sample.points) {
44
+ const world = unprojector.unproject(point);
45
+ if (!world) continue;
46
+ const cell = this.cellForPosition(world);
47
+ if (!cellsEqual(cameraCell, cell)) this.carve(cameraCell, cell);
48
+ endpoints.push({
49
+ cell,
50
+ rgb: point.rgb
51
+ });
52
+ }
53
+ for (const endpoint of endpoints) this.increment(endpoint.cell, endpoint.rgb);
54
+ return endpoints.length;
55
+ }
56
+ /** Occupied cells observed at least `minObservations` times (default 1). */
57
+ getOccupiedCells(minObservations = 1) {
58
+ const result = [];
59
+ for (const record of this.cells.values()) if (record.count >= minObservations) result.push(record.cell);
60
+ return result;
61
+ }
62
+ /** Quantize a raw-WebXR position to its grid cell (round per axis). */
63
+ cellForPosition(pos) {
64
+ return [
65
+ Math.round(pos[0] / this.cellSizeM) + 0,
66
+ Math.round(pos[1] / this.cellSizeM) + 0,
67
+ Math.round(pos[2] / this.cellSizeM) + 0
68
+ ];
69
+ }
70
+ /** Center of a cell in raw WebXR space (round-consistent: cell · cellSizeM). */
71
+ getCellCenter(cell) {
72
+ return [
73
+ cell[0] * this.cellSizeM,
74
+ cell[1] * this.cellSizeM,
75
+ cell[2] * this.cellSizeM
76
+ ];
77
+ }
78
+ /**
79
+ * Running-average color of the cell's colored observations (Iter 8), or
80
+ * null when the cell is unknown or was only ever observed without color
81
+ * (rgb option off / pre-Iter-8 recordings) — consumers fall back to
82
+ * height-based coloring. Channels are rounded and clamped to 0–255.
83
+ */
84
+ getCellColor(cell) {
85
+ const record = this.cells.get(cellKey(cell));
86
+ if (!record || record.colorCount === 0) return null;
87
+ const average = (sum) => Math.min(255, Math.max(0, Math.round(sum / record.colorCount)));
88
+ return [
89
+ average(record.colorSum[0]),
90
+ average(record.colorSum[1]),
91
+ average(record.colorSum[2])
92
+ ];
93
+ }
94
+ /**
95
+ * Walk the grid from `startPos` to `endPos` and return the center of the
96
+ * first cell occupied at least `minObservations` times, or null.
97
+ * Port of Unity's `TryRaycast` (hook for cursor/floor-detection parity).
98
+ */
99
+ raycast(startPos, endPos, minObservations = 1) {
100
+ if (!isFiniteTriple(startPos) || !isFiniteTriple(endPos)) return null;
101
+ let hit = null;
102
+ bresenham3d(this.cellForPosition(startPos), this.cellForPosition(endPos), (cell) => {
103
+ const record = this.cells.get(cellKey(cell));
104
+ if (record && record.count >= minObservations) {
105
+ hit = cell;
106
+ return false;
107
+ }
108
+ return true;
109
+ });
110
+ return hit ? this.getCellCenter(hit) : null;
111
+ }
112
+ /** Remove all occupied cells (e.g. on store swap / new session). */
113
+ clear() {
114
+ this.cells.clear();
115
+ }
116
+ /**
117
+ * Delete occupied cells along the camera→point ray (the space was seen
118
+ * through, so it must be free), stopping `carveStopCells` dominant-axis
119
+ * steps before the endpoint. The endpoint cell itself is additionally
120
+ * protected so a current observation is never erased (relevant for
121
+ * carveStopCells = 0 and for the unconditional start-cell visit).
122
+ */
123
+ carve(cameraCell, pointCell) {
124
+ bresenham3d(cameraCell, pointCell, (cell) => {
125
+ if (!cellsEqual(cell, pointCell)) this.cells.delete(cellKey(cell));
126
+ return true;
127
+ }, this.carveStopCells);
128
+ }
129
+ increment(cell, rgb) {
130
+ const key = cellKey(cell);
131
+ let record = this.cells.get(key);
132
+ if (!record) {
133
+ record = {
134
+ cell,
135
+ count: 0,
136
+ colorCount: 0,
137
+ colorSum: [
138
+ 0,
139
+ 0,
140
+ 0
141
+ ]
142
+ };
143
+ this.cells.set(key, record);
144
+ }
145
+ record.count++;
146
+ if (rgb && isFiniteTriple(rgb)) {
147
+ record.colorCount++;
148
+ record.colorSum[0] += rgb[0];
149
+ record.colorSum[1] += rgb[1];
150
+ record.colorSum[2] += rgb[2];
151
+ }
152
+ }
153
+ };
154
+ function cellKey(cell) {
155
+ return `${cell[0]},${cell[1]},${cell[2]}`;
156
+ }
157
+ function cellsEqual(a, b) {
158
+ return a[0] === b[0] && a[1] === b[1] && a[2] === b[2];
159
+ }
160
+ function isFiniteTriple(v) {
161
+ return Number.isFinite(v[0]) && Number.isFinite(v[1]) && Number.isFinite(v[2]);
162
+ }
163
+ //#endregion
164
+ export { OccupancyGrid };
@@ -1,2 +1,2 @@
1
- import { a as getCameraFollower, c as getReplayState, d as updateOrbitTarget, i as getAlignmentLerper, l as initReplayScene, n as ReplaySceneState, o as getCameraMode, r as disposeReplayScene, s as getCss3dManager, t as CameraMode, u as toggleCameraMode } from "../replay-scene-DkNfldPh.js";
1
+ import { a as getCameraFollower, c as getReplayState, d as updateOrbitTarget, i as getAlignmentLerper, l as initReplayScene, n as ReplaySceneState, o as getCameraMode, r as disposeReplayScene, s as getCss3dManager, t as CameraMode, u as toggleCameraMode } from "../replay-scene-Bw58VL6p.js";
2
2
  export { CameraMode, ReplaySceneState, disposeReplayScene, getAlignmentLerper, getCameraFollower, getCameraMode, getCss3dManager, getReplayState, initReplayScene, toggleCameraMode, updateOrbitTarget };
@@ -1,6 +1,6 @@
1
1
  import { createLogger } from "../utils/logger.js";
2
+ import { C as setArWorldGroup, O as setScene, S as setArPose, r as createSceneHierarchy, w as setCamera } from "../webxr-session-QhcSSub5.js";
2
3
  import { createCss3dRendererManager } from "../visualization/css3d-renderer-manager.js";
3
- import { createSceneHierarchy, setArPose, setArWorldGroup, setCamera, setScene } from "./webxr-session.js";
4
4
  import { createCameraFollower } from "../visualization/camera-follower.js";
5
5
  import { createAlignmentLerper } from "../visualization/alignment-lerper.js";
6
6
  import { createGpsCompassCubes } from "../visualization/gps-compass-cubes.js";
@@ -1,2 +1,2 @@
1
- import { t as SCENE_NODE } from "../scene-node-names-IHW7HR4S.js";
1
+ import { t as SCENE_NODE } from "../scene-node-names-Bu0S66H1.js";
2
2
  export { SCENE_NODE };
@@ -0,0 +1,2 @@
1
+ import { t as WEBXR_TO_NUE } from "../webxr-nue-basis-CqKQmZzT.js";
2
+ export { WEBXR_TO_NUE };
@@ -51,4 +51,4 @@ const WEBXR_TO_NUE = /* @__PURE__ */ new Matrix4().fromArray([
51
51
  1
52
52
  ]);
53
53
  //#endregion
54
- export { WEBXR_TO_NUE as t };
54
+ export { WEBXR_TO_NUE };
@@ -1,4 +1,4 @@
1
- import { i as DepthSample, t as ARPose } from "../ar-types-isPsQptb.js";
2
- import { t as CapturedImage } from "../image-capture-BXZUmj7j.js";
3
- import { A as setScene, C as resetWebXRState, D as setDepthCaptureCallback, E as setCamera, F as shouldLogCameraAccessDiagnostic, I as startDepthCapture, L as startImageCapture, M as setTrackingLostCallback, N as setTrackingRecoveredCallback, O as setFrameCallback, P as setTrackingStore, R as stopDepthCapture, S as nueQuaternionToWebXR, T as setArWorldGroup, _ as getXrCameraFromPose, a as createSceneHierarchy, b as isXRCameraLike, c as extractResetTransformData, d as getCamera, f as getCurrentArPose, g as getScene, h as getLiveCss3dManager, i as buildSessionOptions, j as setTrackingCallbacks, k as setImageCaptureCallback, l as getArPose, m as getImageCaptureFrameCount, n as TrackingSubscribableStore, o as endARSession, p as getDepthSampleCount, r as applyAlignmentMatrix, s as extractPoseFromViewer, t as SessionFeatureOptions, u as getArWorldGroup, v as initAR, w as setArPose, x as nuePositionToWebXR, y as isWebXRSupported, z as stopImageCapture } from "../webxr-session-BnArFCew.js";
1
+ import { i as DepthSample, t as ARPose } from "../ar-types-Dan1MVTi.js";
2
+ import { t as CapturedImage } from "../image-capture-DZ4HFRgS.js";
3
+ import { A as setScene, C as resetWebXRState, D as setDepthCaptureCallback, E as setCamera, F as shouldLogCameraAccessDiagnostic, I as startDepthCapture, L as startImageCapture, M as setTrackingLostCallback, N as setTrackingRecoveredCallback, O as setFrameCallback, P as setTrackingStore, R as stopDepthCapture, S as nueQuaternionToWebXR, T as setArWorldGroup, _ as getXrCameraFromPose, a as createSceneHierarchy, b as isXRCameraLike, c as extractResetTransformData, d as getCamera, f as getCurrentArPose, g as getScene, h as getLiveCss3dManager, i as buildSessionOptions, j as setTrackingCallbacks, k as setImageCaptureCallback, l as getArPose, m as getImageCaptureFrameCount, n as TrackingSubscribableStore, o as endARSession, p as getDepthSampleCount, r as applyAlignmentMatrix, s as extractPoseFromViewer, t as SessionFeatureOptions, u as getArWorldGroup, v as initAR, w as setArPose, x as nuePositionToWebXR, y as isWebXRSupported, z as stopImageCapture } from "../webxr-session-DtAG9srK.js";
4
4
  export { ARPose, CapturedImage, DepthSample, SessionFeatureOptions, TrackingSubscribableStore, applyAlignmentMatrix, buildSessionOptions, createSceneHierarchy, endARSession, extractPoseFromViewer, extractResetTransformData, getArPose, getArWorldGroup, getCamera, getCurrentArPose, getDepthSampleCount, getImageCaptureFrameCount, getLiveCss3dManager, getScene, getXrCameraFromPose, initAR, isWebXRSupported, isXRCameraLike, nuePositionToWebXR, nueQuaternionToWebXR, resetWebXRState, setArPose, setArWorldGroup, setCamera, setDepthCaptureCallback, setFrameCallback, setImageCaptureCallback, setScene, setTrackingCallbacks, setTrackingLostCallback, setTrackingRecoveredCallback, setTrackingStore, shouldLogCameraAccessDiagnostic, startDepthCapture, startImageCapture, stopDepthCapture, stopImageCapture };