@pascal-app/core 1.0.0 → 1.0.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.
Files changed (320) hide show
  1. package/dist/capture/index.d.ts +2 -2
  2. package/dist/capture/index.js +2 -2
  3. package/dist/capture/schema.d.ts.map +1 -1
  4. package/dist/capture/schema.js +2 -0
  5. package/dist/capture/source.d.ts +1 -1
  6. package/dist/capture/source.js +1 -1
  7. package/dist/events/bus.d.ts +6 -3
  8. package/dist/events/bus.d.ts.map +1 -1
  9. package/dist/hooks/spatial-grid/floor-placed-elevation.d.ts +4 -4
  10. package/dist/hooks/spatial-grid/floor-placed-elevation.d.ts.map +1 -1
  11. package/dist/hooks/spatial-grid/floor-placed-elevation.js +7 -12
  12. package/dist/hooks/spatial-grid/floor-placed-footprints.d.ts +4 -0
  13. package/dist/hooks/spatial-grid/floor-placed-footprints.d.ts.map +1 -0
  14. package/dist/hooks/spatial-grid/floor-placed-footprints.js +7 -0
  15. package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts +5 -8
  16. package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts.map +1 -1
  17. package/dist/hooks/spatial-grid/spatial-grid-manager.js +23 -106
  18. package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts +221 -76
  19. package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts.map +1 -1
  20. package/dist/hooks/spatial-grid/spatial-grid-sync.js +77 -13
  21. package/dist/hooks/spatial-grid/support-host-patch.d.ts +1 -1
  22. package/dist/hooks/spatial-grid/support-host-patch.js +6 -6
  23. package/dist/hooks/spatial-grid/use-spatial-query.d.ts +1 -1
  24. package/dist/hooks/spatial-grid/use-spatial-query.js +1 -1
  25. package/dist/index.d.ts +74 -72
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +71 -69
  28. package/dist/lib/door-operation.d.ts +1 -1
  29. package/dist/lib/item-polygon-overlap.d.ts +6 -0
  30. package/dist/lib/item-polygon-overlap.d.ts.map +1 -0
  31. package/dist/lib/item-polygon-overlap.js +67 -0
  32. package/dist/lib/level-name.d.ts +1 -1
  33. package/dist/lib/measurement-geometry.d.ts +4 -4
  34. package/dist/lib/plan-footprint.d.ts +41 -0
  35. package/dist/lib/plan-footprint.d.ts.map +1 -0
  36. package/dist/lib/plan-footprint.js +58 -0
  37. package/dist/lib/room-topology-index.d.ts +1 -1
  38. package/dist/lib/room-topology-index.js +1 -1
  39. package/dist/lib/selection-proxy.d.ts +1 -1
  40. package/dist/lib/slab-polygon.d.ts +2 -2
  41. package/dist/lib/slab-polygon.js +2 -2
  42. package/dist/lib/space-detection.d.ts +1 -1
  43. package/dist/lib/space-detection.d.ts.map +1 -1
  44. package/dist/lib/space-detection.js +16 -11
  45. package/dist/lib/terrain-brush.d.ts +1 -1
  46. package/dist/lib/terrain-brush.js +1 -1
  47. package/dist/lib/terrain-codec.d.ts +2 -2
  48. package/dist/lib/terrain-codec.js +1 -1
  49. package/dist/lib/terrain-raycast.d.ts +1 -1
  50. package/dist/lib/terrain-raycast.js +1 -1
  51. package/dist/lib/terrain-source.d.ts +3 -3
  52. package/dist/lib/terrain-source.js +3 -3
  53. package/dist/lib/terrain-support.d.ts +1 -1
  54. package/dist/lib/terrain-support.js +3 -3
  55. package/dist/lib/unit-containment.d.ts +19 -0
  56. package/dist/lib/unit-containment.d.ts.map +1 -0
  57. package/dist/lib/unit-containment.js +158 -0
  58. package/dist/lib/unit-report.d.ts +19 -0
  59. package/dist/lib/unit-report.d.ts.map +1 -0
  60. package/dist/lib/unit-report.js +36 -0
  61. package/dist/lib/wall-distance.d.ts +2 -2
  62. package/dist/lib/wall-distance.js +1 -1
  63. package/dist/lib/zone-quantities.d.ts +1 -1
  64. package/dist/lib/zone-quantities.js +7 -7
  65. package/dist/material-library.d.ts +1 -1
  66. package/dist/material-library.js +1 -1
  67. package/dist/procedural-items/fixtures.d.ts +261 -0
  68. package/dist/procedural-items/fixtures.d.ts.map +1 -0
  69. package/dist/procedural-items/fixtures.js +349 -0
  70. package/dist/procedural-items/index.d.ts +10 -0
  71. package/dist/procedural-items/index.d.ts.map +1 -0
  72. package/dist/procedural-items/index.js +9 -0
  73. package/dist/procedural-items/integration.d.ts +92 -0
  74. package/dist/procedural-items/integration.d.ts.map +1 -0
  75. package/dist/procedural-items/integration.js +19 -0
  76. package/dist/procedural-items/library-colors.d.ts +56 -0
  77. package/dist/procedural-items/library-colors.d.ts.map +1 -0
  78. package/dist/procedural-items/library-colors.js +84 -0
  79. package/dist/procedural-items/materials.d.ts +5 -0
  80. package/dist/procedural-items/materials.d.ts.map +1 -0
  81. package/dist/procedural-items/materials.js +47 -0
  82. package/dist/procedural-items/node.d.ts +280 -0
  83. package/dist/procedural-items/node.d.ts.map +1 -0
  84. package/dist/procedural-items/node.js +71 -0
  85. package/dist/procedural-items/placement.d.ts +7 -0
  86. package/dist/procedural-items/placement.d.ts.map +1 -0
  87. package/dist/procedural-items/placement.js +48 -0
  88. package/dist/procedural-items/query.d.ts +50 -0
  89. package/dist/procedural-items/query.d.ts.map +1 -0
  90. package/dist/procedural-items/query.js +298 -0
  91. package/dist/procedural-items/recipe.d.ts +144 -0
  92. package/dist/procedural-items/recipe.d.ts.map +1 -0
  93. package/dist/procedural-items/recipe.js +372 -0
  94. package/dist/procedural-items/spatial.d.ts +19 -0
  95. package/dist/procedural-items/spatial.d.ts.map +1 -0
  96. package/dist/procedural-items/spatial.js +39 -0
  97. package/dist/registry/__bench__/relations-resolver.bench.js +2 -2
  98. package/dist/registry/handles.d.ts +12 -4
  99. package/dist/registry/handles.d.ts.map +1 -1
  100. package/dist/registry/index.d.ts +6 -6
  101. package/dist/registry/index.js +4 -4
  102. package/dist/registry/registry.d.ts +1 -1
  103. package/dist/registry/relations-resolver.d.ts +2 -2
  104. package/dist/registry/relations-resolver.js +1 -1
  105. package/dist/registry/scene-api.d.ts +2 -2
  106. package/dist/registry/scene-api.js +2 -2
  107. package/dist/registry/subtree.d.ts +1 -1
  108. package/dist/registry/subtree.js +2 -2
  109. package/dist/registry/types.d.ts +21 -9
  110. package/dist/registry/types.d.ts.map +1 -1
  111. package/dist/registry/use-registry-version.js +1 -1
  112. package/dist/registry/validate-relations.d.ts +4 -0
  113. package/dist/registry/validate-relations.d.ts.map +1 -0
  114. package/dist/registry/validate-relations.js +22 -0
  115. package/dist/schema/__bench__/node-parsers.bench.js +3 -3
  116. package/dist/schema/__fixtures__/node-fixtures.d.ts +1 -1
  117. package/dist/schema/__fixtures__/node-fixtures.d.ts.map +1 -1
  118. package/dist/schema/__fixtures__/node-fixtures.js +4 -2
  119. package/dist/schema/base.js +1 -1
  120. package/dist/schema/collections.d.ts +1 -1
  121. package/dist/schema/collections.js +1 -1
  122. package/dist/schema/compiled-node-parsers.d.ts +1 -1
  123. package/dist/schema/compiled-node-parsers.js +1 -1
  124. package/dist/schema/index.d.ts +73 -70
  125. package/dist/schema/index.d.ts.map +1 -1
  126. package/dist/schema/index.js +64 -61
  127. package/dist/schema/material.d.ts +1 -1
  128. package/dist/schema/material.js +1 -1
  129. package/dist/schema/nodes/automatic-downspout.d.ts +4 -4
  130. package/dist/schema/nodes/automatic-downspout.js +5 -5
  131. package/dist/schema/nodes/block.d.ts +1 -1
  132. package/dist/schema/nodes/block.d.ts.map +1 -1
  133. package/dist/schema/nodes/block.js +3 -4
  134. package/dist/schema/nodes/box-vent.js +2 -2
  135. package/dist/schema/nodes/building.d.ts +1 -1
  136. package/dist/schema/nodes/building.d.ts.map +1 -1
  137. package/dist/schema/nodes/building.js +8 -5
  138. package/dist/schema/nodes/cabinet.d.ts +2 -2
  139. package/dist/schema/nodes/cabinet.js +4 -4
  140. package/dist/schema/nodes/ceiling.d.ts +1 -1
  141. package/dist/schema/nodes/ceiling.js +5 -5
  142. package/dist/schema/nodes/chimney.js +2 -2
  143. package/dist/schema/nodes/column.d.ts +1 -0
  144. package/dist/schema/nodes/column.d.ts.map +1 -1
  145. package/dist/schema/nodes/column.js +3 -2
  146. package/dist/schema/nodes/construction-dimension.d.ts +3 -3
  147. package/dist/schema/nodes/construction-dimension.js +2 -2
  148. package/dist/schema/nodes/cupola.d.ts +1 -1
  149. package/dist/schema/nodes/cupola.js +2 -2
  150. package/dist/schema/nodes/door.js +2 -2
  151. package/dist/schema/nodes/dormer.d.ts +3 -3
  152. package/dist/schema/nodes/dormer.js +4 -4
  153. package/dist/schema/nodes/downspout.js +2 -2
  154. package/dist/schema/nodes/duct-fitting.js +1 -1
  155. package/dist/schema/nodes/duct-segment.js +2 -2
  156. package/dist/schema/nodes/duct-terminal.js +1 -1
  157. package/dist/schema/nodes/elevator.js +2 -2
  158. package/dist/schema/nodes/eyebrow-vent.js +2 -2
  159. package/dist/schema/nodes/fence.js +2 -2
  160. package/dist/schema/nodes/guide.js +2 -2
  161. package/dist/schema/nodes/gutter.d.ts +1 -1
  162. package/dist/schema/nodes/gutter.js +4 -4
  163. package/dist/schema/nodes/hvac-equipment.js +1 -1
  164. package/dist/schema/nodes/imported-mesh.d.ts +40 -0
  165. package/dist/schema/nodes/imported-mesh.d.ts.map +1 -0
  166. package/dist/schema/nodes/imported-mesh.js +27 -0
  167. package/dist/schema/nodes/item.d.ts +3 -3
  168. package/dist/schema/nodes/item.js +3 -3
  169. package/dist/schema/nodes/lean-to-extension.js +4 -4
  170. package/dist/schema/nodes/level.d.ts +1 -1
  171. package/dist/schema/nodes/level.d.ts.map +1 -1
  172. package/dist/schema/nodes/level.js +1 -1
  173. package/dist/schema/nodes/lineset.js +1 -1
  174. package/dist/schema/nodes/liquid-line.js +1 -1
  175. package/dist/schema/nodes/measurement.js +2 -2
  176. package/dist/schema/nodes/pipe-fitting.d.ts +1 -1
  177. package/dist/schema/nodes/pipe-fitting.js +1 -1
  178. package/dist/schema/nodes/pipe-segment.d.ts +1 -1
  179. package/dist/schema/nodes/pipe-segment.js +2 -2
  180. package/dist/schema/nodes/pipe-trap.d.ts +1 -1
  181. package/dist/schema/nodes/pipe-trap.js +1 -1
  182. package/dist/schema/nodes/ridge-vent.d.ts +1 -1
  183. package/dist/schema/nodes/ridge-vent.js +3 -3
  184. package/dist/schema/nodes/roof-segment-shape.d.ts +1 -1
  185. package/dist/schema/nodes/roof-segment-shape.js +1 -1
  186. package/dist/schema/nodes/roof-segment-walls.d.ts +1 -1
  187. package/dist/schema/nodes/roof-segment-walls.js +1 -1
  188. package/dist/schema/nodes/roof-segment.d.ts +2 -2
  189. package/dist/schema/nodes/roof-segment.js +2 -2
  190. package/dist/schema/nodes/roof.d.ts +1 -1
  191. package/dist/schema/nodes/roof.js +3 -3
  192. package/dist/schema/nodes/scan.js +3 -3
  193. package/dist/schema/nodes/shelf.d.ts +1 -1
  194. package/dist/schema/nodes/shelf.d.ts.map +1 -1
  195. package/dist/schema/nodes/shelf.js +3 -4
  196. package/dist/schema/nodes/site.js +2 -2
  197. package/dist/schema/nodes/skylight.d.ts +4 -4
  198. package/dist/schema/nodes/skylight.js +2 -2
  199. package/dist/schema/nodes/slab.js +3 -3
  200. package/dist/schema/nodes/solar-panel.js +3 -3
  201. package/dist/schema/nodes/spawn.js +1 -1
  202. package/dist/schema/nodes/stair-segment.js +2 -2
  203. package/dist/schema/nodes/stair.d.ts +1 -1
  204. package/dist/schema/nodes/stair.js +3 -3
  205. package/dist/schema/nodes/structural-grid.js +1 -1
  206. package/dist/schema/nodes/turbine-vent.d.ts +1 -1
  207. package/dist/schema/nodes/turbine-vent.js +2 -2
  208. package/dist/schema/nodes/unit.d.ts +33 -0
  209. package/dist/schema/nodes/unit.d.ts.map +1 -0
  210. package/dist/schema/nodes/unit.js +13 -0
  211. package/dist/schema/nodes/wall.d.ts +2 -2
  212. package/dist/schema/nodes/wall.d.ts.map +1 -1
  213. package/dist/schema/nodes/wall.js +7 -6
  214. package/dist/schema/nodes/window.js +2 -2
  215. package/dist/schema/nodes/zone.js +1 -1
  216. package/dist/schema/scene-material.js +2 -2
  217. package/dist/schema/types.d.ts +341 -19
  218. package/dist/schema/types.d.ts.map +1 -1
  219. package/dist/schema/types.js +56 -49
  220. package/dist/services/alignment-anchors.d.ts +6 -11
  221. package/dist/services/alignment-anchors.d.ts.map +1 -1
  222. package/dist/services/alignment-anchors.js +7 -34
  223. package/dist/services/drag-session.d.ts +4 -4
  224. package/dist/services/drag-session.js +1 -1
  225. package/dist/services/hosting.d.ts +2 -8
  226. package/dist/services/hosting.d.ts.map +1 -1
  227. package/dist/services/hosting.js +2 -12
  228. package/dist/services/index.d.ts +16 -13
  229. package/dist/services/index.d.ts.map +1 -1
  230. package/dist/services/index.js +16 -13
  231. package/dist/services/level-height.d.ts +2 -2
  232. package/dist/services/level-height.js +3 -3
  233. package/dist/services/movement.d.ts +3 -3
  234. package/dist/services/movement.js +2 -2
  235. package/dist/services/port-connectivity.d.ts +1 -1
  236. package/dist/services/port-connectivity.js +1 -1
  237. package/dist/services/riser-diagram.d.ts +1 -1
  238. package/dist/services/shelf-board.d.ts +5 -0
  239. package/dist/services/shelf-board.d.ts.map +1 -0
  240. package/dist/services/shelf-board.js +15 -0
  241. package/dist/services/storey.d.ts +2 -2
  242. package/dist/services/storey.js +2 -2
  243. package/dist/services/surface-hosting-procedural-parity.fixtures.d.ts +13 -0
  244. package/dist/services/surface-hosting-procedural-parity.fixtures.d.ts.map +1 -0
  245. package/dist/services/surface-hosting-procedural-parity.fixtures.js +4691 -0
  246. package/dist/services/surface-hosting-shelf-parity.fixtures.d.ts +1060 -0
  247. package/dist/services/surface-hosting-shelf-parity.fixtures.d.ts.map +1 -0
  248. package/dist/services/surface-hosting-shelf-parity.fixtures.js +3127 -0
  249. package/dist/services/surface-hosting.d.ts +88 -0
  250. package/dist/services/surface-hosting.d.ts.map +1 -0
  251. package/dist/services/surface-hosting.js +268 -0
  252. package/dist/services/surface-region.d.ts +8 -0
  253. package/dist/services/surface-region.d.ts.map +1 -0
  254. package/dist/services/surface-region.js +44 -0
  255. package/dist/services/system-graph.d.ts +2 -2
  256. package/dist/services/system-graph.js +2 -2
  257. package/dist/services/validate-dwv.d.ts +1 -1
  258. package/dist/services/validate-dwv.js +1 -1
  259. package/dist/store/actions/node-actions.d.ts +2 -2
  260. package/dist/store/actions/node-actions.d.ts.map +1 -1
  261. package/dist/store/actions/node-actions.js +48 -9
  262. package/dist/store/history-control.d.ts +3 -3
  263. package/dist/store/history-invalidation.d.ts +1 -1
  264. package/dist/store/history-invalidation.js +1 -1
  265. package/dist/store/use-interactive.d.ts +2 -2
  266. package/dist/store/use-live-terrain.d.ts +1 -1
  267. package/dist/store/use-scene.d.ts +4 -4
  268. package/dist/store/use-scene.d.ts.map +1 -1
  269. package/dist/store/use-scene.js +37 -31
  270. package/dist/systems/elevator/elevator-dispatch.d.ts +2 -2
  271. package/dist/systems/elevator/elevator-dispatch.js +1 -1
  272. package/dist/systems/elevator/elevator-geometry.d.ts +1 -1
  273. package/dist/systems/elevator/elevator-opening-sync.d.ts +1 -1
  274. package/dist/systems/elevator/elevator-opening-sync.js +2 -2
  275. package/dist/systems/elevator/elevator-opening-system.js +3 -3
  276. package/dist/systems/elevator/elevator-runtime.d.ts +3 -3
  277. package/dist/systems/elevator/elevator-runtime.js +3 -3
  278. package/dist/systems/elevator/elevator-service.d.ts +1 -1
  279. package/dist/systems/elevator/elevator-service.js +1 -1
  280. package/dist/systems/fence/fence-centerline.d.ts +2 -2
  281. package/dist/systems/fence/fence-centerline.js +2 -2
  282. package/dist/systems/fence/fence-spline.d.ts +2 -2
  283. package/dist/systems/roof/roof-elevation-system.js +3 -3
  284. package/dist/systems/roof/roof-elevation.d.ts +2 -2
  285. package/dist/systems/roof/roof-elevation.js +6 -6
  286. package/dist/systems/roof/roof-footprint.d.ts +1 -1
  287. package/dist/systems/roof/roof-footprint.js +3 -3
  288. package/dist/systems/slab/slab-placement.d.ts +1 -1
  289. package/dist/systems/slab/slab-support.d.ts +1 -1
  290. package/dist/systems/slab/slab-support.js +4 -4
  291. package/dist/systems/stair/stair-flight.d.ts +2 -2
  292. package/dist/systems/stair/stair-flight.js +2 -2
  293. package/dist/systems/stair/stair-footprint.d.ts +1 -1
  294. package/dist/systems/stair/stair-opening-preview.d.ts +206 -79
  295. package/dist/systems/stair/stair-opening-preview.d.ts.map +1 -1
  296. package/dist/systems/stair/stair-opening-preview.js +2 -2
  297. package/dist/systems/stair/stair-opening-sync.d.ts +1 -1
  298. package/dist/systems/stair/stair-opening-sync.js +6 -6
  299. package/dist/systems/stair/stair-opening-system.js +8 -8
  300. package/dist/systems/stair/stair-rise.d.ts +1 -1
  301. package/dist/systems/stair/stair-rise.js +3 -3
  302. package/dist/systems/wall/wall-curve.d.ts +2 -2
  303. package/dist/systems/wall/wall-footprint.d.ts +3 -3
  304. package/dist/systems/wall/wall-footprint.js +3 -3
  305. package/dist/systems/wall/wall-mitering.d.ts +1 -1
  306. package/dist/systems/wall/wall-mitering.js +1 -1
  307. package/dist/systems/wall/wall-move.d.ts +1 -1
  308. package/dist/systems/wall/wall-top.d.ts +1 -1
  309. package/dist/systems/wall/wall-topology.d.ts +2 -2
  310. package/dist/systems/wall/wall-topology.js +4 -4
  311. package/dist/utils/clone-scene-graph.d.ts +3 -3
  312. package/dist/utils/clone-scene-graph.d.ts.map +1 -1
  313. package/dist/utils/clone-scene-graph.js +9 -3
  314. package/dist/utils/scene-migrations.d.ts +3 -3
  315. package/dist/utils/scene-migrations.js +3 -3
  316. package/dist/utils/vertical-scene-migration.js +5 -5
  317. package/dist/validation/validate-build-json.d.ts +5 -2
  318. package/dist/validation/validate-build-json.d.ts.map +1 -1
  319. package/dist/validation/validate-build-json.js +45 -4
  320. package/package.json +14 -3
@@ -0,0 +1,3127 @@
1
+ // Live production resolver capture, 2026-09-16; generator: bench/surface-hosting/capture-contained-shelf-parity.ts in the private repo.
2
+ export const frozenShelfContainedParity = [
3
+ {
4
+ label: 'contained wall-shelf, bottom false',
5
+ host: {
6
+ object: 'node',
7
+ id: 'frozen_shelf',
8
+ type: 'shelf',
9
+ parentId: null,
10
+ visible: true,
11
+ metadata: {},
12
+ children: [],
13
+ position: [0, 0, 0],
14
+ rotation: [0, 0, 0],
15
+ width: 1.2,
16
+ depth: 0.4,
17
+ thickness: 0.04,
18
+ height: 1.8,
19
+ style: 'wall-shelf',
20
+ rows: 3,
21
+ columns: 1,
22
+ withBack: false,
23
+ withSides: true,
24
+ withBottom: false,
25
+ bracketStyle: 'minimal',
26
+ },
27
+ rows: [
28
+ [
29
+ [0.09, 0.64, -0.035],
30
+ [0.16, 0.25, 0.12],
31
+ 0,
32
+ 1,
33
+ 0,
34
+ [0.09, -0.035],
35
+ { position: [0.09, 0.64, -0.035], rotationY: 0 },
36
+ 'board 0; small interior; grid 0',
37
+ ],
38
+ [
39
+ [-0.12, 0.64, 0.01],
40
+ [0.22, 0.2, 0.12],
41
+ -0.7853981633974483,
42
+ 1,
43
+ 0,
44
+ [-0.12, 0.01],
45
+ { position: [-0.12, 0.64, 0.01], rotationY: -0.7853981633974483 },
46
+ 'board 0; contained rotation -45 degrees; grid 0',
47
+ ],
48
+ [
49
+ [0.12, 0.64, -0.01],
50
+ [0.22, 0.2, 0.12],
51
+ 0.7853981633974483,
52
+ 1,
53
+ 0,
54
+ [0.12, -0.01],
55
+ { position: [0.12, 0.64, -0.01], rotationY: 0.7853981633974483 },
56
+ 'board 0; contained rotation 45 degrees; grid 0',
57
+ ],
58
+ [
59
+ [0.09, 0.64, -0.035],
60
+ [0.16, 0.25, 0.12],
61
+ 0,
62
+ 1,
63
+ 0.05,
64
+ [0.08, -0.04000000000000001],
65
+ { position: [0.08, 0.64, -0.04000000000000001], rotationY: 0 },
66
+ 'board 0; small interior; grid 0.05',
67
+ ],
68
+ [
69
+ [-0.12, 0.64, 0.01],
70
+ [0.22, 0.2, 0.12],
71
+ -0.7853981633974483,
72
+ 1,
73
+ 0.05,
74
+ [-0.14, 0.009999999999999995],
75
+ { position: [-0.14, 0.64, 0.009999999999999995], rotationY: -0.7853981633974483 },
76
+ 'board 0; contained rotation -45 degrees; grid 0.05',
77
+ ],
78
+ [
79
+ [0.12, 0.64, -0.01],
80
+ [0.22, 0.2, 0.12],
81
+ 0.7853981633974483,
82
+ 1,
83
+ 0.05,
84
+ [0.11, 0.009999999999999995],
85
+ { position: [0.11, 0.64, 0.009999999999999995], rotationY: 0.7853981633974483 },
86
+ 'board 0; contained rotation 45 degrees; grid 0.05',
87
+ ],
88
+ [
89
+ [-0.515, 0.64, 0],
90
+ [0.16, 0.25, 0.12],
91
+ 0,
92
+ 1,
93
+ 0,
94
+ [-0.515, 0],
95
+ { position: [-0.515, 0.64, 0], rotationY: 0 },
96
+ 'board 0; near left edge, 5 mm clearance; grid 0',
97
+ ],
98
+ [
99
+ [0, 0.64, -0.134],
100
+ [0.16, 0.25, 0.12],
101
+ 0,
102
+ 1,
103
+ 0,
104
+ [0, -0.134],
105
+ { position: [0, 0.64, -0.134], rotationY: 0 },
106
+ 'board 0; near back edge, 5 mm clearance; grid 0',
107
+ ],
108
+ [
109
+ [0.515, 0.64, 0],
110
+ [0.16, 0.25, 0.12],
111
+ 0,
112
+ 1,
113
+ 0,
114
+ [0.515, 0],
115
+ { position: [0.515, 0.64, 0], rotationY: 0 },
116
+ 'board 0; near right edge, 5 mm clearance; grid 0',
117
+ ],
118
+ [
119
+ [0, 0.64, 0.134],
120
+ [0.16, 0.25, 0.12],
121
+ 0,
122
+ 1,
123
+ 0,
124
+ [0, 0.134],
125
+ { position: [0, 0.64, 0.134], rotationY: 0 },
126
+ 'board 0; near front edge, 5 mm clearance; grid 0',
127
+ ],
128
+ [
129
+ [0, 0.64, 0],
130
+ [1.2, 0.2, 0.398],
131
+ 0,
132
+ 1,
133
+ 0,
134
+ [0, 0],
135
+ { position: [0, 0.64, 0], rotationY: 0 },
136
+ 'board 0; exact board, centred and unrotated; grid 0',
137
+ ],
138
+ [
139
+ [0.09, 1.24, -0.035],
140
+ [0.16, 0.25, 0.12],
141
+ 0,
142
+ 1,
143
+ 0,
144
+ [0.09, -0.035],
145
+ { position: [0.09, 1.24, -0.035], rotationY: 0 },
146
+ 'board 1; small interior; grid 0',
147
+ ],
148
+ [
149
+ [-0.12, 1.24, 0.01],
150
+ [0.22, 0.2, 0.12],
151
+ -0.7853981633974483,
152
+ 1,
153
+ 0,
154
+ [-0.12, 0.01],
155
+ { position: [-0.12, 1.24, 0.01], rotationY: -0.7853981633974483 },
156
+ 'board 1; contained rotation -45 degrees; grid 0',
157
+ ],
158
+ [
159
+ [0.12, 1.24, -0.01],
160
+ [0.22, 0.2, 0.12],
161
+ 0.7853981633974483,
162
+ 1,
163
+ 0,
164
+ [0.12, -0.01],
165
+ { position: [0.12, 1.24, -0.01], rotationY: 0.7853981633974483 },
166
+ 'board 1; contained rotation 45 degrees; grid 0',
167
+ ],
168
+ [
169
+ [0.09, 1.24, -0.035],
170
+ [0.16, 0.25, 0.12],
171
+ 0,
172
+ 1,
173
+ 0.05,
174
+ [0.08, -0.04000000000000001],
175
+ { position: [0.08, 1.24, -0.04000000000000001], rotationY: 0 },
176
+ 'board 1; small interior; grid 0.05',
177
+ ],
178
+ [
179
+ [-0.12, 1.24, 0.01],
180
+ [0.22, 0.2, 0.12],
181
+ -0.7853981633974483,
182
+ 1,
183
+ 0.05,
184
+ [-0.14, 0.009999999999999995],
185
+ { position: [-0.14, 1.24, 0.009999999999999995], rotationY: -0.7853981633974483 },
186
+ 'board 1; contained rotation -45 degrees; grid 0.05',
187
+ ],
188
+ [
189
+ [0.12, 1.24, -0.01],
190
+ [0.22, 0.2, 0.12],
191
+ 0.7853981633974483,
192
+ 1,
193
+ 0.05,
194
+ [0.11, 0.009999999999999995],
195
+ { position: [0.11, 1.24, 0.009999999999999995], rotationY: 0.7853981633974483 },
196
+ 'board 1; contained rotation 45 degrees; grid 0.05',
197
+ ],
198
+ [
199
+ [-0.515, 1.24, 0],
200
+ [0.16, 0.25, 0.12],
201
+ 0,
202
+ 1,
203
+ 0,
204
+ [-0.515, 0],
205
+ { position: [-0.515, 1.24, 0], rotationY: 0 },
206
+ 'board 1; near left edge, 5 mm clearance; grid 0',
207
+ ],
208
+ [
209
+ [0, 1.24, -0.134],
210
+ [0.16, 0.25, 0.12],
211
+ 0,
212
+ 1,
213
+ 0,
214
+ [0, -0.134],
215
+ { position: [0, 1.24, -0.134], rotationY: 0 },
216
+ 'board 1; near back edge, 5 mm clearance; grid 0',
217
+ ],
218
+ [
219
+ [0.515, 1.24, 0],
220
+ [0.16, 0.25, 0.12],
221
+ 0,
222
+ 1,
223
+ 0,
224
+ [0.515, 0],
225
+ { position: [0.515, 1.24, 0], rotationY: 0 },
226
+ 'board 1; near right edge, 5 mm clearance; grid 0',
227
+ ],
228
+ [
229
+ [0, 1.24, 0.134],
230
+ [0.16, 0.25, 0.12],
231
+ 0,
232
+ 1,
233
+ 0,
234
+ [0, 0.134],
235
+ { position: [0, 1.24, 0.134], rotationY: 0 },
236
+ 'board 1; near front edge, 5 mm clearance; grid 0',
237
+ ],
238
+ [
239
+ [0, 1.24, 0],
240
+ [1.2, 0.2, 0.398],
241
+ 0,
242
+ 1,
243
+ 0,
244
+ [0, 0],
245
+ { position: [0, 1.24, 0], rotationY: 0 },
246
+ 'board 1; exact board, centred and unrotated; grid 0',
247
+ ],
248
+ [
249
+ [0.09, 1.8399999999999999, -0.035],
250
+ [0.16, 0.25, 0.12],
251
+ 0,
252
+ 1,
253
+ 0,
254
+ [0.09, -0.035],
255
+ { position: [0.09, 1.8399999999999999, -0.035], rotationY: 0 },
256
+ 'board 2; small interior; grid 0',
257
+ ],
258
+ [
259
+ [-0.12, 1.8399999999999999, 0.01],
260
+ [0.22, 0.2, 0.12],
261
+ -0.7853981633974483,
262
+ 1,
263
+ 0,
264
+ [-0.12, 0.01],
265
+ { position: [-0.12, 1.8399999999999999, 0.01], rotationY: -0.7853981633974483 },
266
+ 'board 2; contained rotation -45 degrees; grid 0',
267
+ ],
268
+ [
269
+ [0.12, 1.8399999999999999, -0.01],
270
+ [0.22, 0.2, 0.12],
271
+ 0.7853981633974483,
272
+ 1,
273
+ 0,
274
+ [0.12, -0.01],
275
+ { position: [0.12, 1.8399999999999999, -0.01], rotationY: 0.7853981633974483 },
276
+ 'board 2; contained rotation 45 degrees; grid 0',
277
+ ],
278
+ [
279
+ [0.09, 1.8399999999999999, -0.035],
280
+ [0.16, 0.25, 0.12],
281
+ 0,
282
+ 1,
283
+ 0.05,
284
+ [0.08, -0.04000000000000001],
285
+ { position: [0.08, 1.8399999999999999, -0.04000000000000001], rotationY: 0 },
286
+ 'board 2; small interior; grid 0.05',
287
+ ],
288
+ [
289
+ [-0.12, 1.8399999999999999, 0.01],
290
+ [0.22, 0.2, 0.12],
291
+ -0.7853981633974483,
292
+ 1,
293
+ 0.05,
294
+ [-0.14, 0.009999999999999995],
295
+ {
296
+ position: [-0.14, 1.8399999999999999, 0.009999999999999995],
297
+ rotationY: -0.7853981633974483,
298
+ },
299
+ 'board 2; contained rotation -45 degrees; grid 0.05',
300
+ ],
301
+ [
302
+ [0.12, 1.8399999999999999, -0.01],
303
+ [0.22, 0.2, 0.12],
304
+ 0.7853981633974483,
305
+ 1,
306
+ 0.05,
307
+ [0.11, 0.009999999999999995],
308
+ {
309
+ position: [0.11, 1.8399999999999999, 0.009999999999999995],
310
+ rotationY: 0.7853981633974483,
311
+ },
312
+ 'board 2; contained rotation 45 degrees; grid 0.05',
313
+ ],
314
+ [
315
+ [-0.515, 1.8399999999999999, 0],
316
+ [0.16, 0.25, 0.12],
317
+ 0,
318
+ 1,
319
+ 0,
320
+ [-0.515, 0],
321
+ { position: [-0.515, 1.8399999999999999, 0], rotationY: 0 },
322
+ 'board 2; near left edge, 5 mm clearance; grid 0',
323
+ ],
324
+ [
325
+ [0, 1.8399999999999999, -0.134],
326
+ [0.16, 0.25, 0.12],
327
+ 0,
328
+ 1,
329
+ 0,
330
+ [0, -0.134],
331
+ { position: [0, 1.8399999999999999, -0.134], rotationY: 0 },
332
+ 'board 2; near back edge, 5 mm clearance; grid 0',
333
+ ],
334
+ [
335
+ [0.515, 1.8399999999999999, 0],
336
+ [0.16, 0.25, 0.12],
337
+ 0,
338
+ 1,
339
+ 0,
340
+ [0.515, 0],
341
+ { position: [0.515, 1.8399999999999999, 0], rotationY: 0 },
342
+ 'board 2; near right edge, 5 mm clearance; grid 0',
343
+ ],
344
+ [
345
+ [0, 1.8399999999999999, 0.134],
346
+ [0.16, 0.25, 0.12],
347
+ 0,
348
+ 1,
349
+ 0,
350
+ [0, 0.134],
351
+ { position: [0, 1.8399999999999999, 0.134], rotationY: 0 },
352
+ 'board 2; near front edge, 5 mm clearance; grid 0',
353
+ ],
354
+ [
355
+ [0, 1.8399999999999999, 0],
356
+ [1.2, 0.2, 0.398],
357
+ 0,
358
+ 1,
359
+ 0,
360
+ [0, 0],
361
+ { position: [0, 1.8399999999999999, 0], rotationY: 0 },
362
+ 'board 2; exact board, centred and unrotated; grid 0',
363
+ ],
364
+ ],
365
+ },
366
+ {
367
+ label: 'contained wall-shelf, bottom true',
368
+ host: {
369
+ object: 'node',
370
+ id: 'frozen_shelf',
371
+ type: 'shelf',
372
+ parentId: null,
373
+ visible: true,
374
+ metadata: {},
375
+ children: [],
376
+ position: [0, 0, 0],
377
+ rotation: [0, 0, 0],
378
+ width: 1.2,
379
+ depth: 0.4,
380
+ thickness: 0.04,
381
+ height: 1.8,
382
+ style: 'wall-shelf',
383
+ rows: 3,
384
+ columns: 1,
385
+ withBack: false,
386
+ withSides: true,
387
+ withBottom: true,
388
+ bracketStyle: 'minimal',
389
+ },
390
+ rows: [
391
+ [
392
+ [0.09, 0.64, -0.035],
393
+ [0.16, 0.25, 0.12],
394
+ 0,
395
+ 1,
396
+ 0,
397
+ [0.09, -0.035],
398
+ { position: [0.09, 0.64, -0.035], rotationY: 0 },
399
+ 'board 0; small interior; grid 0',
400
+ ],
401
+ [
402
+ [-0.12, 0.64, 0.01],
403
+ [0.22, 0.2, 0.12],
404
+ -0.7853981633974483,
405
+ 1,
406
+ 0,
407
+ [-0.12, 0.01],
408
+ { position: [-0.12, 0.64, 0.01], rotationY: -0.7853981633974483 },
409
+ 'board 0; contained rotation -45 degrees; grid 0',
410
+ ],
411
+ [
412
+ [0.12, 0.64, -0.01],
413
+ [0.22, 0.2, 0.12],
414
+ 0.7853981633974483,
415
+ 1,
416
+ 0,
417
+ [0.12, -0.01],
418
+ { position: [0.12, 0.64, -0.01], rotationY: 0.7853981633974483 },
419
+ 'board 0; contained rotation 45 degrees; grid 0',
420
+ ],
421
+ [
422
+ [0.09, 0.64, -0.035],
423
+ [0.16, 0.25, 0.12],
424
+ 0,
425
+ 1,
426
+ 0.05,
427
+ [0.08, -0.04000000000000001],
428
+ { position: [0.08, 0.64, -0.04000000000000001], rotationY: 0 },
429
+ 'board 0; small interior; grid 0.05',
430
+ ],
431
+ [
432
+ [-0.12, 0.64, 0.01],
433
+ [0.22, 0.2, 0.12],
434
+ -0.7853981633974483,
435
+ 1,
436
+ 0.05,
437
+ [-0.14, 0.009999999999999995],
438
+ { position: [-0.14, 0.64, 0.009999999999999995], rotationY: -0.7853981633974483 },
439
+ 'board 0; contained rotation -45 degrees; grid 0.05',
440
+ ],
441
+ [
442
+ [0.12, 0.64, -0.01],
443
+ [0.22, 0.2, 0.12],
444
+ 0.7853981633974483,
445
+ 1,
446
+ 0.05,
447
+ [0.11, 0.009999999999999995],
448
+ { position: [0.11, 0.64, 0.009999999999999995], rotationY: 0.7853981633974483 },
449
+ 'board 0; contained rotation 45 degrees; grid 0.05',
450
+ ],
451
+ [
452
+ [-0.515, 0.64, 0],
453
+ [0.16, 0.25, 0.12],
454
+ 0,
455
+ 1,
456
+ 0,
457
+ [-0.515, 0],
458
+ { position: [-0.515, 0.64, 0], rotationY: 0 },
459
+ 'board 0; near left edge, 5 mm clearance; grid 0',
460
+ ],
461
+ [
462
+ [0, 0.64, -0.134],
463
+ [0.16, 0.25, 0.12],
464
+ 0,
465
+ 1,
466
+ 0,
467
+ [0, -0.134],
468
+ { position: [0, 0.64, -0.134], rotationY: 0 },
469
+ 'board 0; near back edge, 5 mm clearance; grid 0',
470
+ ],
471
+ [
472
+ [0.515, 0.64, 0],
473
+ [0.16, 0.25, 0.12],
474
+ 0,
475
+ 1,
476
+ 0,
477
+ [0.515, 0],
478
+ { position: [0.515, 0.64, 0], rotationY: 0 },
479
+ 'board 0; near right edge, 5 mm clearance; grid 0',
480
+ ],
481
+ [
482
+ [0, 0.64, 0.134],
483
+ [0.16, 0.25, 0.12],
484
+ 0,
485
+ 1,
486
+ 0,
487
+ [0, 0.134],
488
+ { position: [0, 0.64, 0.134], rotationY: 0 },
489
+ 'board 0; near front edge, 5 mm clearance; grid 0',
490
+ ],
491
+ [
492
+ [0, 0.64, 0],
493
+ [1.2, 0.2, 0.398],
494
+ 0,
495
+ 1,
496
+ 0,
497
+ [0, 0],
498
+ { position: [0, 0.64, 0], rotationY: 0 },
499
+ 'board 0; exact board, centred and unrotated; grid 0',
500
+ ],
501
+ [
502
+ [0.09, 1.24, -0.035],
503
+ [0.16, 0.25, 0.12],
504
+ 0,
505
+ 1,
506
+ 0,
507
+ [0.09, -0.035],
508
+ { position: [0.09, 1.24, -0.035], rotationY: 0 },
509
+ 'board 1; small interior; grid 0',
510
+ ],
511
+ [
512
+ [-0.12, 1.24, 0.01],
513
+ [0.22, 0.2, 0.12],
514
+ -0.7853981633974483,
515
+ 1,
516
+ 0,
517
+ [-0.12, 0.01],
518
+ { position: [-0.12, 1.24, 0.01], rotationY: -0.7853981633974483 },
519
+ 'board 1; contained rotation -45 degrees; grid 0',
520
+ ],
521
+ [
522
+ [0.12, 1.24, -0.01],
523
+ [0.22, 0.2, 0.12],
524
+ 0.7853981633974483,
525
+ 1,
526
+ 0,
527
+ [0.12, -0.01],
528
+ { position: [0.12, 1.24, -0.01], rotationY: 0.7853981633974483 },
529
+ 'board 1; contained rotation 45 degrees; grid 0',
530
+ ],
531
+ [
532
+ [0.09, 1.24, -0.035],
533
+ [0.16, 0.25, 0.12],
534
+ 0,
535
+ 1,
536
+ 0.05,
537
+ [0.08, -0.04000000000000001],
538
+ { position: [0.08, 1.24, -0.04000000000000001], rotationY: 0 },
539
+ 'board 1; small interior; grid 0.05',
540
+ ],
541
+ [
542
+ [-0.12, 1.24, 0.01],
543
+ [0.22, 0.2, 0.12],
544
+ -0.7853981633974483,
545
+ 1,
546
+ 0.05,
547
+ [-0.14, 0.009999999999999995],
548
+ { position: [-0.14, 1.24, 0.009999999999999995], rotationY: -0.7853981633974483 },
549
+ 'board 1; contained rotation -45 degrees; grid 0.05',
550
+ ],
551
+ [
552
+ [0.12, 1.24, -0.01],
553
+ [0.22, 0.2, 0.12],
554
+ 0.7853981633974483,
555
+ 1,
556
+ 0.05,
557
+ [0.11, 0.009999999999999995],
558
+ { position: [0.11, 1.24, 0.009999999999999995], rotationY: 0.7853981633974483 },
559
+ 'board 1; contained rotation 45 degrees; grid 0.05',
560
+ ],
561
+ [
562
+ [-0.515, 1.24, 0],
563
+ [0.16, 0.25, 0.12],
564
+ 0,
565
+ 1,
566
+ 0,
567
+ [-0.515, 0],
568
+ { position: [-0.515, 1.24, 0], rotationY: 0 },
569
+ 'board 1; near left edge, 5 mm clearance; grid 0',
570
+ ],
571
+ [
572
+ [0, 1.24, -0.134],
573
+ [0.16, 0.25, 0.12],
574
+ 0,
575
+ 1,
576
+ 0,
577
+ [0, -0.134],
578
+ { position: [0, 1.24, -0.134], rotationY: 0 },
579
+ 'board 1; near back edge, 5 mm clearance; grid 0',
580
+ ],
581
+ [
582
+ [0.515, 1.24, 0],
583
+ [0.16, 0.25, 0.12],
584
+ 0,
585
+ 1,
586
+ 0,
587
+ [0.515, 0],
588
+ { position: [0.515, 1.24, 0], rotationY: 0 },
589
+ 'board 1; near right edge, 5 mm clearance; grid 0',
590
+ ],
591
+ [
592
+ [0, 1.24, 0.134],
593
+ [0.16, 0.25, 0.12],
594
+ 0,
595
+ 1,
596
+ 0,
597
+ [0, 0.134],
598
+ { position: [0, 1.24, 0.134], rotationY: 0 },
599
+ 'board 1; near front edge, 5 mm clearance; grid 0',
600
+ ],
601
+ [
602
+ [0, 1.24, 0],
603
+ [1.2, 0.2, 0.398],
604
+ 0,
605
+ 1,
606
+ 0,
607
+ [0, 0],
608
+ { position: [0, 1.24, 0], rotationY: 0 },
609
+ 'board 1; exact board, centred and unrotated; grid 0',
610
+ ],
611
+ [
612
+ [0.09, 1.8399999999999999, -0.035],
613
+ [0.16, 0.25, 0.12],
614
+ 0,
615
+ 1,
616
+ 0,
617
+ [0.09, -0.035],
618
+ { position: [0.09, 1.8399999999999999, -0.035], rotationY: 0 },
619
+ 'board 2; small interior; grid 0',
620
+ ],
621
+ [
622
+ [-0.12, 1.8399999999999999, 0.01],
623
+ [0.22, 0.2, 0.12],
624
+ -0.7853981633974483,
625
+ 1,
626
+ 0,
627
+ [-0.12, 0.01],
628
+ { position: [-0.12, 1.8399999999999999, 0.01], rotationY: -0.7853981633974483 },
629
+ 'board 2; contained rotation -45 degrees; grid 0',
630
+ ],
631
+ [
632
+ [0.12, 1.8399999999999999, -0.01],
633
+ [0.22, 0.2, 0.12],
634
+ 0.7853981633974483,
635
+ 1,
636
+ 0,
637
+ [0.12, -0.01],
638
+ { position: [0.12, 1.8399999999999999, -0.01], rotationY: 0.7853981633974483 },
639
+ 'board 2; contained rotation 45 degrees; grid 0',
640
+ ],
641
+ [
642
+ [0.09, 1.8399999999999999, -0.035],
643
+ [0.16, 0.25, 0.12],
644
+ 0,
645
+ 1,
646
+ 0.05,
647
+ [0.08, -0.04000000000000001],
648
+ { position: [0.08, 1.8399999999999999, -0.04000000000000001], rotationY: 0 },
649
+ 'board 2; small interior; grid 0.05',
650
+ ],
651
+ [
652
+ [-0.12, 1.8399999999999999, 0.01],
653
+ [0.22, 0.2, 0.12],
654
+ -0.7853981633974483,
655
+ 1,
656
+ 0.05,
657
+ [-0.14, 0.009999999999999995],
658
+ {
659
+ position: [-0.14, 1.8399999999999999, 0.009999999999999995],
660
+ rotationY: -0.7853981633974483,
661
+ },
662
+ 'board 2; contained rotation -45 degrees; grid 0.05',
663
+ ],
664
+ [
665
+ [0.12, 1.8399999999999999, -0.01],
666
+ [0.22, 0.2, 0.12],
667
+ 0.7853981633974483,
668
+ 1,
669
+ 0.05,
670
+ [0.11, 0.009999999999999995],
671
+ {
672
+ position: [0.11, 1.8399999999999999, 0.009999999999999995],
673
+ rotationY: 0.7853981633974483,
674
+ },
675
+ 'board 2; contained rotation 45 degrees; grid 0.05',
676
+ ],
677
+ [
678
+ [-0.515, 1.8399999999999999, 0],
679
+ [0.16, 0.25, 0.12],
680
+ 0,
681
+ 1,
682
+ 0,
683
+ [-0.515, 0],
684
+ { position: [-0.515, 1.8399999999999999, 0], rotationY: 0 },
685
+ 'board 2; near left edge, 5 mm clearance; grid 0',
686
+ ],
687
+ [
688
+ [0, 1.8399999999999999, -0.134],
689
+ [0.16, 0.25, 0.12],
690
+ 0,
691
+ 1,
692
+ 0,
693
+ [0, -0.134],
694
+ { position: [0, 1.8399999999999999, -0.134], rotationY: 0 },
695
+ 'board 2; near back edge, 5 mm clearance; grid 0',
696
+ ],
697
+ [
698
+ [0.515, 1.8399999999999999, 0],
699
+ [0.16, 0.25, 0.12],
700
+ 0,
701
+ 1,
702
+ 0,
703
+ [0.515, 0],
704
+ { position: [0.515, 1.8399999999999999, 0], rotationY: 0 },
705
+ 'board 2; near right edge, 5 mm clearance; grid 0',
706
+ ],
707
+ [
708
+ [0, 1.8399999999999999, 0.134],
709
+ [0.16, 0.25, 0.12],
710
+ 0,
711
+ 1,
712
+ 0,
713
+ [0, 0.134],
714
+ { position: [0, 1.8399999999999999, 0.134], rotationY: 0 },
715
+ 'board 2; near front edge, 5 mm clearance; grid 0',
716
+ ],
717
+ [
718
+ [0, 1.8399999999999999, 0],
719
+ [1.2, 0.2, 0.398],
720
+ 0,
721
+ 1,
722
+ 0,
723
+ [0, 0],
724
+ { position: [0, 1.8399999999999999, 0], rotationY: 0 },
725
+ 'board 2; exact board, centred and unrotated; grid 0',
726
+ ],
727
+ ],
728
+ },
729
+ {
730
+ label: 'contained bookshelf, bottom false',
731
+ host: {
732
+ object: 'node',
733
+ id: 'frozen_shelf',
734
+ type: 'shelf',
735
+ parentId: null,
736
+ visible: true,
737
+ metadata: {},
738
+ children: [],
739
+ position: [0, 0, 0],
740
+ rotation: [0, 0, 0],
741
+ width: 1.2,
742
+ depth: 0.4,
743
+ thickness: 0.04,
744
+ height: 1.8,
745
+ style: 'bookshelf',
746
+ rows: 3,
747
+ columns: 1,
748
+ withBack: false,
749
+ withSides: true,
750
+ withBottom: false,
751
+ bracketStyle: 'minimal',
752
+ },
753
+ rows: [
754
+ [
755
+ [0.09, 0.64, -0.035],
756
+ [0.16, 0.25, 0.12],
757
+ 0,
758
+ 1,
759
+ 0,
760
+ [0.09, -0.035],
761
+ { position: [0.09, 0.64, -0.035], rotationY: 0 },
762
+ 'board 0; small interior; grid 0',
763
+ ],
764
+ [
765
+ [-0.12, 0.64, 0.01],
766
+ [0.22, 0.2, 0.12],
767
+ -0.7853981633974483,
768
+ 1,
769
+ 0,
770
+ [-0.12, 0.01],
771
+ { position: [-0.12, 0.64, 0.01], rotationY: -0.7853981633974483 },
772
+ 'board 0; contained rotation -45 degrees; grid 0',
773
+ ],
774
+ [
775
+ [0.12, 0.64, -0.01],
776
+ [0.22, 0.2, 0.12],
777
+ 0.7853981633974483,
778
+ 1,
779
+ 0,
780
+ [0.12, -0.01],
781
+ { position: [0.12, 0.64, -0.01], rotationY: 0.7853981633974483 },
782
+ 'board 0; contained rotation 45 degrees; grid 0',
783
+ ],
784
+ [
785
+ [0.09, 0.64, -0.035],
786
+ [0.16, 0.25, 0.12],
787
+ 0,
788
+ 1,
789
+ 0.05,
790
+ [0.08, -0.04000000000000001],
791
+ { position: [0.08, 0.64, -0.04000000000000001], rotationY: 0 },
792
+ 'board 0; small interior; grid 0.05',
793
+ ],
794
+ [
795
+ [-0.12, 0.64, 0.01],
796
+ [0.22, 0.2, 0.12],
797
+ -0.7853981633974483,
798
+ 1,
799
+ 0.05,
800
+ [-0.14, 0.009999999999999995],
801
+ { position: [-0.14, 0.64, 0.009999999999999995], rotationY: -0.7853981633974483 },
802
+ 'board 0; contained rotation -45 degrees; grid 0.05',
803
+ ],
804
+ [
805
+ [0.12, 0.64, -0.01],
806
+ [0.22, 0.2, 0.12],
807
+ 0.7853981633974483,
808
+ 1,
809
+ 0.05,
810
+ [0.11, 0.009999999999999995],
811
+ { position: [0.11, 0.64, 0.009999999999999995], rotationY: 0.7853981633974483 },
812
+ 'board 0; contained rotation 45 degrees; grid 0.05',
813
+ ],
814
+ [
815
+ [-0.4749999999999999, 0.64, 0],
816
+ [0.16, 0.25, 0.12],
817
+ 0,
818
+ 1,
819
+ 0,
820
+ [-0.4749999999999999, 0],
821
+ { position: [-0.4749999999999999, 0.64, 0], rotationY: 0 },
822
+ 'board 0; near left edge, 5 mm clearance; grid 0',
823
+ ],
824
+ [
825
+ [0, 0.64, -0.134],
826
+ [0.16, 0.25, 0.12],
827
+ 0,
828
+ 1,
829
+ 0,
830
+ [0, -0.134],
831
+ { position: [0, 0.64, -0.134], rotationY: 0 },
832
+ 'board 0; near back edge, 5 mm clearance; grid 0',
833
+ ],
834
+ [
835
+ [0.4749999999999999, 0.64, 0],
836
+ [0.16, 0.25, 0.12],
837
+ 0,
838
+ 1,
839
+ 0,
840
+ [0.4749999999999999, 0],
841
+ { position: [0.4749999999999999, 0.64, 0], rotationY: 0 },
842
+ 'board 0; near right edge, 5 mm clearance; grid 0',
843
+ ],
844
+ [
845
+ [0, 0.64, 0.134],
846
+ [0.16, 0.25, 0.12],
847
+ 0,
848
+ 1,
849
+ 0,
850
+ [0, 0.134],
851
+ { position: [0, 0.64, 0.134], rotationY: 0 },
852
+ 'board 0; near front edge, 5 mm clearance; grid 0',
853
+ ],
854
+ [
855
+ [0, 0.64, 0],
856
+ [1.1199999999999999, 0.2, 0.398],
857
+ 0,
858
+ 1,
859
+ 0,
860
+ [0, 0],
861
+ { position: [0, 0.64, 0], rotationY: 0 },
862
+ 'board 0; exact board, centred and unrotated; grid 0',
863
+ ],
864
+ [
865
+ [0.09, 1.24, -0.035],
866
+ [0.16, 0.25, 0.12],
867
+ 0,
868
+ 1,
869
+ 0,
870
+ [0.09, -0.035],
871
+ { position: [0.09, 1.24, -0.035], rotationY: 0 },
872
+ 'board 1; small interior; grid 0',
873
+ ],
874
+ [
875
+ [-0.12, 1.24, 0.01],
876
+ [0.22, 0.2, 0.12],
877
+ -0.7853981633974483,
878
+ 1,
879
+ 0,
880
+ [-0.12, 0.01],
881
+ { position: [-0.12, 1.24, 0.01], rotationY: -0.7853981633974483 },
882
+ 'board 1; contained rotation -45 degrees; grid 0',
883
+ ],
884
+ [
885
+ [0.12, 1.24, -0.01],
886
+ [0.22, 0.2, 0.12],
887
+ 0.7853981633974483,
888
+ 1,
889
+ 0,
890
+ [0.12, -0.01],
891
+ { position: [0.12, 1.24, -0.01], rotationY: 0.7853981633974483 },
892
+ 'board 1; contained rotation 45 degrees; grid 0',
893
+ ],
894
+ [
895
+ [0.09, 1.24, -0.035],
896
+ [0.16, 0.25, 0.12],
897
+ 0,
898
+ 1,
899
+ 0.05,
900
+ [0.08, -0.04000000000000001],
901
+ { position: [0.08, 1.24, -0.04000000000000001], rotationY: 0 },
902
+ 'board 1; small interior; grid 0.05',
903
+ ],
904
+ [
905
+ [-0.12, 1.24, 0.01],
906
+ [0.22, 0.2, 0.12],
907
+ -0.7853981633974483,
908
+ 1,
909
+ 0.05,
910
+ [-0.14, 0.009999999999999995],
911
+ { position: [-0.14, 1.24, 0.009999999999999995], rotationY: -0.7853981633974483 },
912
+ 'board 1; contained rotation -45 degrees; grid 0.05',
913
+ ],
914
+ [
915
+ [0.12, 1.24, -0.01],
916
+ [0.22, 0.2, 0.12],
917
+ 0.7853981633974483,
918
+ 1,
919
+ 0.05,
920
+ [0.11, 0.009999999999999995],
921
+ { position: [0.11, 1.24, 0.009999999999999995], rotationY: 0.7853981633974483 },
922
+ 'board 1; contained rotation 45 degrees; grid 0.05',
923
+ ],
924
+ [
925
+ [-0.4749999999999999, 1.24, 0],
926
+ [0.16, 0.25, 0.12],
927
+ 0,
928
+ 1,
929
+ 0,
930
+ [-0.4749999999999999, 0],
931
+ { position: [-0.4749999999999999, 1.24, 0], rotationY: 0 },
932
+ 'board 1; near left edge, 5 mm clearance; grid 0',
933
+ ],
934
+ [
935
+ [0, 1.24, -0.134],
936
+ [0.16, 0.25, 0.12],
937
+ 0,
938
+ 1,
939
+ 0,
940
+ [0, -0.134],
941
+ { position: [0, 1.24, -0.134], rotationY: 0 },
942
+ 'board 1; near back edge, 5 mm clearance; grid 0',
943
+ ],
944
+ [
945
+ [0.4749999999999999, 1.24, 0],
946
+ [0.16, 0.25, 0.12],
947
+ 0,
948
+ 1,
949
+ 0,
950
+ [0.4749999999999999, 0],
951
+ { position: [0.4749999999999999, 1.24, 0], rotationY: 0 },
952
+ 'board 1; near right edge, 5 mm clearance; grid 0',
953
+ ],
954
+ [
955
+ [0, 1.24, 0.134],
956
+ [0.16, 0.25, 0.12],
957
+ 0,
958
+ 1,
959
+ 0,
960
+ [0, 0.134],
961
+ { position: [0, 1.24, 0.134], rotationY: 0 },
962
+ 'board 1; near front edge, 5 mm clearance; grid 0',
963
+ ],
964
+ [
965
+ [0, 1.24, 0],
966
+ [1.1199999999999999, 0.2, 0.398],
967
+ 0,
968
+ 1,
969
+ 0,
970
+ [0, 0],
971
+ { position: [0, 1.24, 0], rotationY: 0 },
972
+ 'board 1; exact board, centred and unrotated; grid 0',
973
+ ],
974
+ [
975
+ [0.09, 1.8399999999999999, -0.035],
976
+ [0.16, 0.25, 0.12],
977
+ 0,
978
+ 1,
979
+ 0,
980
+ [0.09, -0.035],
981
+ { position: [0.09, 1.8399999999999999, -0.035], rotationY: 0 },
982
+ 'board 2; small interior; grid 0',
983
+ ],
984
+ [
985
+ [-0.12, 1.8399999999999999, 0.01],
986
+ [0.22, 0.2, 0.12],
987
+ -0.7853981633974483,
988
+ 1,
989
+ 0,
990
+ [-0.12, 0.01],
991
+ { position: [-0.12, 1.8399999999999999, 0.01], rotationY: -0.7853981633974483 },
992
+ 'board 2; contained rotation -45 degrees; grid 0',
993
+ ],
994
+ [
995
+ [0.12, 1.8399999999999999, -0.01],
996
+ [0.22, 0.2, 0.12],
997
+ 0.7853981633974483,
998
+ 1,
999
+ 0,
1000
+ [0.12, -0.01],
1001
+ { position: [0.12, 1.8399999999999999, -0.01], rotationY: 0.7853981633974483 },
1002
+ 'board 2; contained rotation 45 degrees; grid 0',
1003
+ ],
1004
+ [
1005
+ [0.09, 1.8399999999999999, -0.035],
1006
+ [0.16, 0.25, 0.12],
1007
+ 0,
1008
+ 1,
1009
+ 0.05,
1010
+ [0.08, -0.04000000000000001],
1011
+ { position: [0.08, 1.8399999999999999, -0.04000000000000001], rotationY: 0 },
1012
+ 'board 2; small interior; grid 0.05',
1013
+ ],
1014
+ [
1015
+ [-0.12, 1.8399999999999999, 0.01],
1016
+ [0.22, 0.2, 0.12],
1017
+ -0.7853981633974483,
1018
+ 1,
1019
+ 0.05,
1020
+ [-0.14, 0.009999999999999995],
1021
+ {
1022
+ position: [-0.14, 1.8399999999999999, 0.009999999999999995],
1023
+ rotationY: -0.7853981633974483,
1024
+ },
1025
+ 'board 2; contained rotation -45 degrees; grid 0.05',
1026
+ ],
1027
+ [
1028
+ [0.12, 1.8399999999999999, -0.01],
1029
+ [0.22, 0.2, 0.12],
1030
+ 0.7853981633974483,
1031
+ 1,
1032
+ 0.05,
1033
+ [0.11, 0.009999999999999995],
1034
+ {
1035
+ position: [0.11, 1.8399999999999999, 0.009999999999999995],
1036
+ rotationY: 0.7853981633974483,
1037
+ },
1038
+ 'board 2; contained rotation 45 degrees; grid 0.05',
1039
+ ],
1040
+ [
1041
+ [-0.4749999999999999, 1.8399999999999999, 0],
1042
+ [0.16, 0.25, 0.12],
1043
+ 0,
1044
+ 1,
1045
+ 0,
1046
+ [-0.4749999999999999, 0],
1047
+ { position: [-0.4749999999999999, 1.8399999999999999, 0], rotationY: 0 },
1048
+ 'board 2; near left edge, 5 mm clearance; grid 0',
1049
+ ],
1050
+ [
1051
+ [0, 1.8399999999999999, -0.134],
1052
+ [0.16, 0.25, 0.12],
1053
+ 0,
1054
+ 1,
1055
+ 0,
1056
+ [0, -0.134],
1057
+ { position: [0, 1.8399999999999999, -0.134], rotationY: 0 },
1058
+ 'board 2; near back edge, 5 mm clearance; grid 0',
1059
+ ],
1060
+ [
1061
+ [0.4749999999999999, 1.8399999999999999, 0],
1062
+ [0.16, 0.25, 0.12],
1063
+ 0,
1064
+ 1,
1065
+ 0,
1066
+ [0.4749999999999999, 0],
1067
+ { position: [0.4749999999999999, 1.8399999999999999, 0], rotationY: 0 },
1068
+ 'board 2; near right edge, 5 mm clearance; grid 0',
1069
+ ],
1070
+ [
1071
+ [0, 1.8399999999999999, 0.134],
1072
+ [0.16, 0.25, 0.12],
1073
+ 0,
1074
+ 1,
1075
+ 0,
1076
+ [0, 0.134],
1077
+ { position: [0, 1.8399999999999999, 0.134], rotationY: 0 },
1078
+ 'board 2; near front edge, 5 mm clearance; grid 0',
1079
+ ],
1080
+ [
1081
+ [0, 1.8399999999999999, 0],
1082
+ [1.1199999999999999, 0.2, 0.398],
1083
+ 0,
1084
+ 1,
1085
+ 0,
1086
+ [0, 0],
1087
+ { position: [0, 1.8399999999999999, 0], rotationY: 0 },
1088
+ 'board 2; exact board, centred and unrotated; grid 0',
1089
+ ],
1090
+ ],
1091
+ },
1092
+ {
1093
+ label: 'contained bookshelf, bottom true',
1094
+ host: {
1095
+ object: 'node',
1096
+ id: 'frozen_shelf',
1097
+ type: 'shelf',
1098
+ parentId: null,
1099
+ visible: true,
1100
+ metadata: {},
1101
+ children: [],
1102
+ position: [0, 0, 0],
1103
+ rotation: [0, 0, 0],
1104
+ width: 1.2,
1105
+ depth: 0.4,
1106
+ thickness: 0.04,
1107
+ height: 1.8,
1108
+ style: 'bookshelf',
1109
+ rows: 3,
1110
+ columns: 1,
1111
+ withBack: false,
1112
+ withSides: true,
1113
+ withBottom: true,
1114
+ bracketStyle: 'minimal',
1115
+ },
1116
+ rows: [
1117
+ [
1118
+ [0.09, 0.04, -0.035],
1119
+ [0.16, 0.25, 0.12],
1120
+ 0,
1121
+ 1,
1122
+ 0,
1123
+ [0.09, -0.035],
1124
+ { position: [0.09, 0.04, -0.035], rotationY: 0 },
1125
+ 'board 0; small interior; grid 0',
1126
+ ],
1127
+ [
1128
+ [-0.12, 0.04, 0.01],
1129
+ [0.22, 0.2, 0.12],
1130
+ -0.7853981633974483,
1131
+ 1,
1132
+ 0,
1133
+ [-0.12, 0.01],
1134
+ { position: [-0.12, 0.04, 0.01], rotationY: -0.7853981633974483 },
1135
+ 'board 0; contained rotation -45 degrees; grid 0',
1136
+ ],
1137
+ [
1138
+ [0.12, 0.04, -0.01],
1139
+ [0.22, 0.2, 0.12],
1140
+ 0.7853981633974483,
1141
+ 1,
1142
+ 0,
1143
+ [0.12, -0.01],
1144
+ { position: [0.12, 0.04, -0.01], rotationY: 0.7853981633974483 },
1145
+ 'board 0; contained rotation 45 degrees; grid 0',
1146
+ ],
1147
+ [
1148
+ [0.09, 0.04, -0.035],
1149
+ [0.16, 0.25, 0.12],
1150
+ 0,
1151
+ 1,
1152
+ 0.05,
1153
+ [0.08, -0.04000000000000001],
1154
+ { position: [0.08, 0.04, -0.04000000000000001], rotationY: 0 },
1155
+ 'board 0; small interior; grid 0.05',
1156
+ ],
1157
+ [
1158
+ [-0.12, 0.04, 0.01],
1159
+ [0.22, 0.2, 0.12],
1160
+ -0.7853981633974483,
1161
+ 1,
1162
+ 0.05,
1163
+ [-0.14, 0.009999999999999995],
1164
+ { position: [-0.14, 0.04, 0.009999999999999995], rotationY: -0.7853981633974483 },
1165
+ 'board 0; contained rotation -45 degrees; grid 0.05',
1166
+ ],
1167
+ [
1168
+ [0.12, 0.04, -0.01],
1169
+ [0.22, 0.2, 0.12],
1170
+ 0.7853981633974483,
1171
+ 1,
1172
+ 0.05,
1173
+ [0.11, 0.009999999999999995],
1174
+ { position: [0.11, 0.04, 0.009999999999999995], rotationY: 0.7853981633974483 },
1175
+ 'board 0; contained rotation 45 degrees; grid 0.05',
1176
+ ],
1177
+ [
1178
+ [-0.4749999999999999, 0.04, 0],
1179
+ [0.16, 0.25, 0.12],
1180
+ 0,
1181
+ 1,
1182
+ 0,
1183
+ [-0.4749999999999999, 0],
1184
+ { position: [-0.4749999999999999, 0.04, 0], rotationY: 0 },
1185
+ 'board 0; near left edge, 5 mm clearance; grid 0',
1186
+ ],
1187
+ [
1188
+ [0, 0.04, -0.134],
1189
+ [0.16, 0.25, 0.12],
1190
+ 0,
1191
+ 1,
1192
+ 0,
1193
+ [0, -0.134],
1194
+ { position: [0, 0.04, -0.134], rotationY: 0 },
1195
+ 'board 0; near back edge, 5 mm clearance; grid 0',
1196
+ ],
1197
+ [
1198
+ [0.4749999999999999, 0.04, 0],
1199
+ [0.16, 0.25, 0.12],
1200
+ 0,
1201
+ 1,
1202
+ 0,
1203
+ [0.4749999999999999, 0],
1204
+ { position: [0.4749999999999999, 0.04, 0], rotationY: 0 },
1205
+ 'board 0; near right edge, 5 mm clearance; grid 0',
1206
+ ],
1207
+ [
1208
+ [0, 0.04, 0.134],
1209
+ [0.16, 0.25, 0.12],
1210
+ 0,
1211
+ 1,
1212
+ 0,
1213
+ [0, 0.134],
1214
+ { position: [0, 0.04, 0.134], rotationY: 0 },
1215
+ 'board 0; near front edge, 5 mm clearance; grid 0',
1216
+ ],
1217
+ [
1218
+ [0, 0.04, 0],
1219
+ [1.1199999999999999, 0.2, 0.398],
1220
+ 0,
1221
+ 1,
1222
+ 0,
1223
+ [0, 0],
1224
+ { position: [0, 0.04, 0], rotationY: 0 },
1225
+ 'board 0; exact board, centred and unrotated; grid 0',
1226
+ ],
1227
+ [
1228
+ [0.09, 0.64, -0.035],
1229
+ [0.16, 0.25, 0.12],
1230
+ 0,
1231
+ 1,
1232
+ 0,
1233
+ [0.09, -0.035],
1234
+ { position: [0.09, 0.64, -0.035], rotationY: 0 },
1235
+ 'board 1; small interior; grid 0',
1236
+ ],
1237
+ [
1238
+ [-0.12, 0.64, 0.01],
1239
+ [0.22, 0.2, 0.12],
1240
+ -0.7853981633974483,
1241
+ 1,
1242
+ 0,
1243
+ [-0.12, 0.01],
1244
+ { position: [-0.12, 0.64, 0.01], rotationY: -0.7853981633974483 },
1245
+ 'board 1; contained rotation -45 degrees; grid 0',
1246
+ ],
1247
+ [
1248
+ [0.12, 0.64, -0.01],
1249
+ [0.22, 0.2, 0.12],
1250
+ 0.7853981633974483,
1251
+ 1,
1252
+ 0,
1253
+ [0.12, -0.01],
1254
+ { position: [0.12, 0.64, -0.01], rotationY: 0.7853981633974483 },
1255
+ 'board 1; contained rotation 45 degrees; grid 0',
1256
+ ],
1257
+ [
1258
+ [0.09, 0.64, -0.035],
1259
+ [0.16, 0.25, 0.12],
1260
+ 0,
1261
+ 1,
1262
+ 0.05,
1263
+ [0.08, -0.04000000000000001],
1264
+ { position: [0.08, 0.64, -0.04000000000000001], rotationY: 0 },
1265
+ 'board 1; small interior; grid 0.05',
1266
+ ],
1267
+ [
1268
+ [-0.12, 0.64, 0.01],
1269
+ [0.22, 0.2, 0.12],
1270
+ -0.7853981633974483,
1271
+ 1,
1272
+ 0.05,
1273
+ [-0.14, 0.009999999999999995],
1274
+ { position: [-0.14, 0.64, 0.009999999999999995], rotationY: -0.7853981633974483 },
1275
+ 'board 1; contained rotation -45 degrees; grid 0.05',
1276
+ ],
1277
+ [
1278
+ [0.12, 0.64, -0.01],
1279
+ [0.22, 0.2, 0.12],
1280
+ 0.7853981633974483,
1281
+ 1,
1282
+ 0.05,
1283
+ [0.11, 0.009999999999999995],
1284
+ { position: [0.11, 0.64, 0.009999999999999995], rotationY: 0.7853981633974483 },
1285
+ 'board 1; contained rotation 45 degrees; grid 0.05',
1286
+ ],
1287
+ [
1288
+ [-0.4749999999999999, 0.64, 0],
1289
+ [0.16, 0.25, 0.12],
1290
+ 0,
1291
+ 1,
1292
+ 0,
1293
+ [-0.4749999999999999, 0],
1294
+ { position: [-0.4749999999999999, 0.64, 0], rotationY: 0 },
1295
+ 'board 1; near left edge, 5 mm clearance; grid 0',
1296
+ ],
1297
+ [
1298
+ [0, 0.64, -0.134],
1299
+ [0.16, 0.25, 0.12],
1300
+ 0,
1301
+ 1,
1302
+ 0,
1303
+ [0, -0.134],
1304
+ { position: [0, 0.64, -0.134], rotationY: 0 },
1305
+ 'board 1; near back edge, 5 mm clearance; grid 0',
1306
+ ],
1307
+ [
1308
+ [0.4749999999999999, 0.64, 0],
1309
+ [0.16, 0.25, 0.12],
1310
+ 0,
1311
+ 1,
1312
+ 0,
1313
+ [0.4749999999999999, 0],
1314
+ { position: [0.4749999999999999, 0.64, 0], rotationY: 0 },
1315
+ 'board 1; near right edge, 5 mm clearance; grid 0',
1316
+ ],
1317
+ [
1318
+ [0, 0.64, 0.134],
1319
+ [0.16, 0.25, 0.12],
1320
+ 0,
1321
+ 1,
1322
+ 0,
1323
+ [0, 0.134],
1324
+ { position: [0, 0.64, 0.134], rotationY: 0 },
1325
+ 'board 1; near front edge, 5 mm clearance; grid 0',
1326
+ ],
1327
+ [
1328
+ [0, 0.64, 0],
1329
+ [1.1199999999999999, 0.2, 0.398],
1330
+ 0,
1331
+ 1,
1332
+ 0,
1333
+ [0, 0],
1334
+ { position: [0, 0.64, 0], rotationY: 0 },
1335
+ 'board 1; exact board, centred and unrotated; grid 0',
1336
+ ],
1337
+ [
1338
+ [0.09, 1.24, -0.035],
1339
+ [0.16, 0.25, 0.12],
1340
+ 0,
1341
+ 1,
1342
+ 0,
1343
+ [0.09, -0.035],
1344
+ { position: [0.09, 1.24, -0.035], rotationY: 0 },
1345
+ 'board 2; small interior; grid 0',
1346
+ ],
1347
+ [
1348
+ [-0.12, 1.24, 0.01],
1349
+ [0.22, 0.2, 0.12],
1350
+ -0.7853981633974483,
1351
+ 1,
1352
+ 0,
1353
+ [-0.12, 0.01],
1354
+ { position: [-0.12, 1.24, 0.01], rotationY: -0.7853981633974483 },
1355
+ 'board 2; contained rotation -45 degrees; grid 0',
1356
+ ],
1357
+ [
1358
+ [0.12, 1.24, -0.01],
1359
+ [0.22, 0.2, 0.12],
1360
+ 0.7853981633974483,
1361
+ 1,
1362
+ 0,
1363
+ [0.12, -0.01],
1364
+ { position: [0.12, 1.24, -0.01], rotationY: 0.7853981633974483 },
1365
+ 'board 2; contained rotation 45 degrees; grid 0',
1366
+ ],
1367
+ [
1368
+ [0.09, 1.24, -0.035],
1369
+ [0.16, 0.25, 0.12],
1370
+ 0,
1371
+ 1,
1372
+ 0.05,
1373
+ [0.08, -0.04000000000000001],
1374
+ { position: [0.08, 1.24, -0.04000000000000001], rotationY: 0 },
1375
+ 'board 2; small interior; grid 0.05',
1376
+ ],
1377
+ [
1378
+ [-0.12, 1.24, 0.01],
1379
+ [0.22, 0.2, 0.12],
1380
+ -0.7853981633974483,
1381
+ 1,
1382
+ 0.05,
1383
+ [-0.14, 0.009999999999999995],
1384
+ { position: [-0.14, 1.24, 0.009999999999999995], rotationY: -0.7853981633974483 },
1385
+ 'board 2; contained rotation -45 degrees; grid 0.05',
1386
+ ],
1387
+ [
1388
+ [0.12, 1.24, -0.01],
1389
+ [0.22, 0.2, 0.12],
1390
+ 0.7853981633974483,
1391
+ 1,
1392
+ 0.05,
1393
+ [0.11, 0.009999999999999995],
1394
+ { position: [0.11, 1.24, 0.009999999999999995], rotationY: 0.7853981633974483 },
1395
+ 'board 2; contained rotation 45 degrees; grid 0.05',
1396
+ ],
1397
+ [
1398
+ [-0.4749999999999999, 1.24, 0],
1399
+ [0.16, 0.25, 0.12],
1400
+ 0,
1401
+ 1,
1402
+ 0,
1403
+ [-0.4749999999999999, 0],
1404
+ { position: [-0.4749999999999999, 1.24, 0], rotationY: 0 },
1405
+ 'board 2; near left edge, 5 mm clearance; grid 0',
1406
+ ],
1407
+ [
1408
+ [0, 1.24, -0.134],
1409
+ [0.16, 0.25, 0.12],
1410
+ 0,
1411
+ 1,
1412
+ 0,
1413
+ [0, -0.134],
1414
+ { position: [0, 1.24, -0.134], rotationY: 0 },
1415
+ 'board 2; near back edge, 5 mm clearance; grid 0',
1416
+ ],
1417
+ [
1418
+ [0.4749999999999999, 1.24, 0],
1419
+ [0.16, 0.25, 0.12],
1420
+ 0,
1421
+ 1,
1422
+ 0,
1423
+ [0.4749999999999999, 0],
1424
+ { position: [0.4749999999999999, 1.24, 0], rotationY: 0 },
1425
+ 'board 2; near right edge, 5 mm clearance; grid 0',
1426
+ ],
1427
+ [
1428
+ [0, 1.24, 0.134],
1429
+ [0.16, 0.25, 0.12],
1430
+ 0,
1431
+ 1,
1432
+ 0,
1433
+ [0, 0.134],
1434
+ { position: [0, 1.24, 0.134], rotationY: 0 },
1435
+ 'board 2; near front edge, 5 mm clearance; grid 0',
1436
+ ],
1437
+ [
1438
+ [0, 1.24, 0],
1439
+ [1.1199999999999999, 0.2, 0.398],
1440
+ 0,
1441
+ 1,
1442
+ 0,
1443
+ [0, 0],
1444
+ { position: [0, 1.24, 0], rotationY: 0 },
1445
+ 'board 2; exact board, centred and unrotated; grid 0',
1446
+ ],
1447
+ [
1448
+ [0.09, 1.8399999999999999, -0.035],
1449
+ [0.16, 0.25, 0.12],
1450
+ 0,
1451
+ 1,
1452
+ 0,
1453
+ [0.09, -0.035],
1454
+ { position: [0.09, 1.8399999999999999, -0.035], rotationY: 0 },
1455
+ 'board 3; small interior; grid 0',
1456
+ ],
1457
+ [
1458
+ [-0.12, 1.8399999999999999, 0.01],
1459
+ [0.22, 0.2, 0.12],
1460
+ -0.7853981633974483,
1461
+ 1,
1462
+ 0,
1463
+ [-0.12, 0.01],
1464
+ { position: [-0.12, 1.8399999999999999, 0.01], rotationY: -0.7853981633974483 },
1465
+ 'board 3; contained rotation -45 degrees; grid 0',
1466
+ ],
1467
+ [
1468
+ [0.12, 1.8399999999999999, -0.01],
1469
+ [0.22, 0.2, 0.12],
1470
+ 0.7853981633974483,
1471
+ 1,
1472
+ 0,
1473
+ [0.12, -0.01],
1474
+ { position: [0.12, 1.8399999999999999, -0.01], rotationY: 0.7853981633974483 },
1475
+ 'board 3; contained rotation 45 degrees; grid 0',
1476
+ ],
1477
+ [
1478
+ [0.09, 1.8399999999999999, -0.035],
1479
+ [0.16, 0.25, 0.12],
1480
+ 0,
1481
+ 1,
1482
+ 0.05,
1483
+ [0.08, -0.04000000000000001],
1484
+ { position: [0.08, 1.8399999999999999, -0.04000000000000001], rotationY: 0 },
1485
+ 'board 3; small interior; grid 0.05',
1486
+ ],
1487
+ [
1488
+ [-0.12, 1.8399999999999999, 0.01],
1489
+ [0.22, 0.2, 0.12],
1490
+ -0.7853981633974483,
1491
+ 1,
1492
+ 0.05,
1493
+ [-0.14, 0.009999999999999995],
1494
+ {
1495
+ position: [-0.14, 1.8399999999999999, 0.009999999999999995],
1496
+ rotationY: -0.7853981633974483,
1497
+ },
1498
+ 'board 3; contained rotation -45 degrees; grid 0.05',
1499
+ ],
1500
+ [
1501
+ [0.12, 1.8399999999999999, -0.01],
1502
+ [0.22, 0.2, 0.12],
1503
+ 0.7853981633974483,
1504
+ 1,
1505
+ 0.05,
1506
+ [0.11, 0.009999999999999995],
1507
+ {
1508
+ position: [0.11, 1.8399999999999999, 0.009999999999999995],
1509
+ rotationY: 0.7853981633974483,
1510
+ },
1511
+ 'board 3; contained rotation 45 degrees; grid 0.05',
1512
+ ],
1513
+ [
1514
+ [-0.4749999999999999, 1.8399999999999999, 0],
1515
+ [0.16, 0.25, 0.12],
1516
+ 0,
1517
+ 1,
1518
+ 0,
1519
+ [-0.4749999999999999, 0],
1520
+ { position: [-0.4749999999999999, 1.8399999999999999, 0], rotationY: 0 },
1521
+ 'board 3; near left edge, 5 mm clearance; grid 0',
1522
+ ],
1523
+ [
1524
+ [0, 1.8399999999999999, -0.134],
1525
+ [0.16, 0.25, 0.12],
1526
+ 0,
1527
+ 1,
1528
+ 0,
1529
+ [0, -0.134],
1530
+ { position: [0, 1.8399999999999999, -0.134], rotationY: 0 },
1531
+ 'board 3; near back edge, 5 mm clearance; grid 0',
1532
+ ],
1533
+ [
1534
+ [0.4749999999999999, 1.8399999999999999, 0],
1535
+ [0.16, 0.25, 0.12],
1536
+ 0,
1537
+ 1,
1538
+ 0,
1539
+ [0.4749999999999999, 0],
1540
+ { position: [0.4749999999999999, 1.8399999999999999, 0], rotationY: 0 },
1541
+ 'board 3; near right edge, 5 mm clearance; grid 0',
1542
+ ],
1543
+ [
1544
+ [0, 1.8399999999999999, 0.134],
1545
+ [0.16, 0.25, 0.12],
1546
+ 0,
1547
+ 1,
1548
+ 0,
1549
+ [0, 0.134],
1550
+ { position: [0, 1.8399999999999999, 0.134], rotationY: 0 },
1551
+ 'board 3; near front edge, 5 mm clearance; grid 0',
1552
+ ],
1553
+ [
1554
+ [0, 1.8399999999999999, 0],
1555
+ [1.1199999999999999, 0.2, 0.398],
1556
+ 0,
1557
+ 1,
1558
+ 0,
1559
+ [0, 0],
1560
+ { position: [0, 1.8399999999999999, 0], rotationY: 0 },
1561
+ 'board 3; exact board, centred and unrotated; grid 0',
1562
+ ],
1563
+ ],
1564
+ },
1565
+ {
1566
+ label: 'contained open-rack, bottom false',
1567
+ host: {
1568
+ object: 'node',
1569
+ id: 'frozen_shelf',
1570
+ type: 'shelf',
1571
+ parentId: null,
1572
+ visible: true,
1573
+ metadata: {},
1574
+ children: [],
1575
+ position: [0, 0, 0],
1576
+ rotation: [0, 0, 0],
1577
+ width: 1.2,
1578
+ depth: 0.4,
1579
+ thickness: 0.04,
1580
+ height: 1.8,
1581
+ style: 'open-rack',
1582
+ rows: 3,
1583
+ columns: 1,
1584
+ withBack: false,
1585
+ withSides: true,
1586
+ withBottom: false,
1587
+ bracketStyle: 'minimal',
1588
+ },
1589
+ rows: [
1590
+ [
1591
+ [0.09, 0.64, -0.035],
1592
+ [0.16, 0.25, 0.12],
1593
+ 0,
1594
+ 1,
1595
+ 0,
1596
+ [0.09, -0.035],
1597
+ { position: [0.09, 0.64, -0.035], rotationY: 0 },
1598
+ 'board 0; small interior; grid 0',
1599
+ ],
1600
+ [
1601
+ [-0.12, 0.64, 0.01],
1602
+ [0.22, 0.2, 0.12],
1603
+ -0.7853981633974483,
1604
+ 1,
1605
+ 0,
1606
+ [-0.12, 0.01],
1607
+ { position: [-0.12, 0.64, 0.01], rotationY: -0.7853981633974483 },
1608
+ 'board 0; contained rotation -45 degrees; grid 0',
1609
+ ],
1610
+ [
1611
+ [0.12, 0.64, -0.01],
1612
+ [0.22, 0.2, 0.12],
1613
+ 0.7853981633974483,
1614
+ 1,
1615
+ 0,
1616
+ [0.12, -0.01],
1617
+ { position: [0.12, 0.64, -0.01], rotationY: 0.7853981633974483 },
1618
+ 'board 0; contained rotation 45 degrees; grid 0',
1619
+ ],
1620
+ [
1621
+ [0.09, 0.64, -0.035],
1622
+ [0.16, 0.25, 0.12],
1623
+ 0,
1624
+ 1,
1625
+ 0.05,
1626
+ [0.08, -0.04000000000000001],
1627
+ { position: [0.08, 0.64, -0.04000000000000001], rotationY: 0 },
1628
+ 'board 0; small interior; grid 0.05',
1629
+ ],
1630
+ [
1631
+ [-0.12, 0.64, 0.01],
1632
+ [0.22, 0.2, 0.12],
1633
+ -0.7853981633974483,
1634
+ 1,
1635
+ 0.05,
1636
+ [-0.14, 0.009999999999999995],
1637
+ { position: [-0.14, 0.64, 0.009999999999999995], rotationY: -0.7853981633974483 },
1638
+ 'board 0; contained rotation -45 degrees; grid 0.05',
1639
+ ],
1640
+ [
1641
+ [0.12, 0.64, -0.01],
1642
+ [0.22, 0.2, 0.12],
1643
+ 0.7853981633974483,
1644
+ 1,
1645
+ 0.05,
1646
+ [0.11, 0.009999999999999995],
1647
+ { position: [0.11, 0.64, 0.009999999999999995], rotationY: 0.7853981633974483 },
1648
+ 'board 0; contained rotation 45 degrees; grid 0.05',
1649
+ ],
1650
+ [
1651
+ [-0.514, 0.64, 0],
1652
+ [0.16, 0.25, 0.12],
1653
+ 0,
1654
+ 1,
1655
+ 0,
1656
+ [-0.514, 0],
1657
+ { position: [-0.514, 0.64, 0], rotationY: 0 },
1658
+ 'board 0; near left edge, 5 mm clearance; grid 0',
1659
+ ],
1660
+ [
1661
+ [0, 0.64, -0.134],
1662
+ [0.16, 0.25, 0.12],
1663
+ 0,
1664
+ 1,
1665
+ 0,
1666
+ [0, -0.134],
1667
+ { position: [0, 0.64, -0.134], rotationY: 0 },
1668
+ 'board 0; near back edge, 5 mm clearance; grid 0',
1669
+ ],
1670
+ [
1671
+ [0.514, 0.64, 0],
1672
+ [0.16, 0.25, 0.12],
1673
+ 0,
1674
+ 1,
1675
+ 0,
1676
+ [0.514, 0],
1677
+ { position: [0.514, 0.64, 0], rotationY: 0 },
1678
+ 'board 0; near right edge, 5 mm clearance; grid 0',
1679
+ ],
1680
+ [
1681
+ [0, 0.64, 0.134],
1682
+ [0.16, 0.25, 0.12],
1683
+ 0,
1684
+ 1,
1685
+ 0,
1686
+ [0, 0.134],
1687
+ { position: [0, 0.64, 0.134], rotationY: 0 },
1688
+ 'board 0; near front edge, 5 mm clearance; grid 0',
1689
+ ],
1690
+ [
1691
+ [0, 0.64, 0],
1692
+ [1.198, 0.2, 0.398],
1693
+ 0,
1694
+ 1,
1695
+ 0,
1696
+ [0, 0],
1697
+ { position: [0, 0.64, 0], rotationY: 0 },
1698
+ 'board 0; exact board, centred and unrotated; grid 0',
1699
+ ],
1700
+ [
1701
+ [0.09, 1.24, -0.035],
1702
+ [0.16, 0.25, 0.12],
1703
+ 0,
1704
+ 1,
1705
+ 0,
1706
+ [0.09, -0.035],
1707
+ { position: [0.09, 1.24, -0.035], rotationY: 0 },
1708
+ 'board 1; small interior; grid 0',
1709
+ ],
1710
+ [
1711
+ [-0.12, 1.24, 0.01],
1712
+ [0.22, 0.2, 0.12],
1713
+ -0.7853981633974483,
1714
+ 1,
1715
+ 0,
1716
+ [-0.12, 0.01],
1717
+ { position: [-0.12, 1.24, 0.01], rotationY: -0.7853981633974483 },
1718
+ 'board 1; contained rotation -45 degrees; grid 0',
1719
+ ],
1720
+ [
1721
+ [0.12, 1.24, -0.01],
1722
+ [0.22, 0.2, 0.12],
1723
+ 0.7853981633974483,
1724
+ 1,
1725
+ 0,
1726
+ [0.12, -0.01],
1727
+ { position: [0.12, 1.24, -0.01], rotationY: 0.7853981633974483 },
1728
+ 'board 1; contained rotation 45 degrees; grid 0',
1729
+ ],
1730
+ [
1731
+ [0.09, 1.24, -0.035],
1732
+ [0.16, 0.25, 0.12],
1733
+ 0,
1734
+ 1,
1735
+ 0.05,
1736
+ [0.08, -0.04000000000000001],
1737
+ { position: [0.08, 1.24, -0.04000000000000001], rotationY: 0 },
1738
+ 'board 1; small interior; grid 0.05',
1739
+ ],
1740
+ [
1741
+ [-0.12, 1.24, 0.01],
1742
+ [0.22, 0.2, 0.12],
1743
+ -0.7853981633974483,
1744
+ 1,
1745
+ 0.05,
1746
+ [-0.14, 0.009999999999999995],
1747
+ { position: [-0.14, 1.24, 0.009999999999999995], rotationY: -0.7853981633974483 },
1748
+ 'board 1; contained rotation -45 degrees; grid 0.05',
1749
+ ],
1750
+ [
1751
+ [0.12, 1.24, -0.01],
1752
+ [0.22, 0.2, 0.12],
1753
+ 0.7853981633974483,
1754
+ 1,
1755
+ 0.05,
1756
+ [0.11, 0.009999999999999995],
1757
+ { position: [0.11, 1.24, 0.009999999999999995], rotationY: 0.7853981633974483 },
1758
+ 'board 1; contained rotation 45 degrees; grid 0.05',
1759
+ ],
1760
+ [
1761
+ [-0.514, 1.24, 0],
1762
+ [0.16, 0.25, 0.12],
1763
+ 0,
1764
+ 1,
1765
+ 0,
1766
+ [-0.514, 0],
1767
+ { position: [-0.514, 1.24, 0], rotationY: 0 },
1768
+ 'board 1; near left edge, 5 mm clearance; grid 0',
1769
+ ],
1770
+ [
1771
+ [0, 1.24, -0.134],
1772
+ [0.16, 0.25, 0.12],
1773
+ 0,
1774
+ 1,
1775
+ 0,
1776
+ [0, -0.134],
1777
+ { position: [0, 1.24, -0.134], rotationY: 0 },
1778
+ 'board 1; near back edge, 5 mm clearance; grid 0',
1779
+ ],
1780
+ [
1781
+ [0.514, 1.24, 0],
1782
+ [0.16, 0.25, 0.12],
1783
+ 0,
1784
+ 1,
1785
+ 0,
1786
+ [0.514, 0],
1787
+ { position: [0.514, 1.24, 0], rotationY: 0 },
1788
+ 'board 1; near right edge, 5 mm clearance; grid 0',
1789
+ ],
1790
+ [
1791
+ [0, 1.24, 0.134],
1792
+ [0.16, 0.25, 0.12],
1793
+ 0,
1794
+ 1,
1795
+ 0,
1796
+ [0, 0.134],
1797
+ { position: [0, 1.24, 0.134], rotationY: 0 },
1798
+ 'board 1; near front edge, 5 mm clearance; grid 0',
1799
+ ],
1800
+ [
1801
+ [0, 1.24, 0],
1802
+ [1.198, 0.2, 0.398],
1803
+ 0,
1804
+ 1,
1805
+ 0,
1806
+ [0, 0],
1807
+ { position: [0, 1.24, 0], rotationY: 0 },
1808
+ 'board 1; exact board, centred and unrotated; grid 0',
1809
+ ],
1810
+ [
1811
+ [0.09, 1.8399999999999999, -0.035],
1812
+ [0.16, 0.25, 0.12],
1813
+ 0,
1814
+ 1,
1815
+ 0,
1816
+ [0.09, -0.035],
1817
+ { position: [0.09, 1.8399999999999999, -0.035], rotationY: 0 },
1818
+ 'board 2; small interior; grid 0',
1819
+ ],
1820
+ [
1821
+ [-0.12, 1.8399999999999999, 0.01],
1822
+ [0.22, 0.2, 0.12],
1823
+ -0.7853981633974483,
1824
+ 1,
1825
+ 0,
1826
+ [-0.12, 0.01],
1827
+ { position: [-0.12, 1.8399999999999999, 0.01], rotationY: -0.7853981633974483 },
1828
+ 'board 2; contained rotation -45 degrees; grid 0',
1829
+ ],
1830
+ [
1831
+ [0.12, 1.8399999999999999, -0.01],
1832
+ [0.22, 0.2, 0.12],
1833
+ 0.7853981633974483,
1834
+ 1,
1835
+ 0,
1836
+ [0.12, -0.01],
1837
+ { position: [0.12, 1.8399999999999999, -0.01], rotationY: 0.7853981633974483 },
1838
+ 'board 2; contained rotation 45 degrees; grid 0',
1839
+ ],
1840
+ [
1841
+ [0.09, 1.8399999999999999, -0.035],
1842
+ [0.16, 0.25, 0.12],
1843
+ 0,
1844
+ 1,
1845
+ 0.05,
1846
+ [0.08, -0.04000000000000001],
1847
+ { position: [0.08, 1.8399999999999999, -0.04000000000000001], rotationY: 0 },
1848
+ 'board 2; small interior; grid 0.05',
1849
+ ],
1850
+ [
1851
+ [-0.12, 1.8399999999999999, 0.01],
1852
+ [0.22, 0.2, 0.12],
1853
+ -0.7853981633974483,
1854
+ 1,
1855
+ 0.05,
1856
+ [-0.14, 0.009999999999999995],
1857
+ {
1858
+ position: [-0.14, 1.8399999999999999, 0.009999999999999995],
1859
+ rotationY: -0.7853981633974483,
1860
+ },
1861
+ 'board 2; contained rotation -45 degrees; grid 0.05',
1862
+ ],
1863
+ [
1864
+ [0.12, 1.8399999999999999, -0.01],
1865
+ [0.22, 0.2, 0.12],
1866
+ 0.7853981633974483,
1867
+ 1,
1868
+ 0.05,
1869
+ [0.11, 0.009999999999999995],
1870
+ {
1871
+ position: [0.11, 1.8399999999999999, 0.009999999999999995],
1872
+ rotationY: 0.7853981633974483,
1873
+ },
1874
+ 'board 2; contained rotation 45 degrees; grid 0.05',
1875
+ ],
1876
+ [
1877
+ [-0.514, 1.8399999999999999, 0],
1878
+ [0.16, 0.25, 0.12],
1879
+ 0,
1880
+ 1,
1881
+ 0,
1882
+ [-0.514, 0],
1883
+ { position: [-0.514, 1.8399999999999999, 0], rotationY: 0 },
1884
+ 'board 2; near left edge, 5 mm clearance; grid 0',
1885
+ ],
1886
+ [
1887
+ [0, 1.8399999999999999, -0.134],
1888
+ [0.16, 0.25, 0.12],
1889
+ 0,
1890
+ 1,
1891
+ 0,
1892
+ [0, -0.134],
1893
+ { position: [0, 1.8399999999999999, -0.134], rotationY: 0 },
1894
+ 'board 2; near back edge, 5 mm clearance; grid 0',
1895
+ ],
1896
+ [
1897
+ [0.514, 1.8399999999999999, 0],
1898
+ [0.16, 0.25, 0.12],
1899
+ 0,
1900
+ 1,
1901
+ 0,
1902
+ [0.514, 0],
1903
+ { position: [0.514, 1.8399999999999999, 0], rotationY: 0 },
1904
+ 'board 2; near right edge, 5 mm clearance; grid 0',
1905
+ ],
1906
+ [
1907
+ [0, 1.8399999999999999, 0.134],
1908
+ [0.16, 0.25, 0.12],
1909
+ 0,
1910
+ 1,
1911
+ 0,
1912
+ [0, 0.134],
1913
+ { position: [0, 1.8399999999999999, 0.134], rotationY: 0 },
1914
+ 'board 2; near front edge, 5 mm clearance; grid 0',
1915
+ ],
1916
+ [
1917
+ [0, 1.8399999999999999, 0],
1918
+ [1.198, 0.2, 0.398],
1919
+ 0,
1920
+ 1,
1921
+ 0,
1922
+ [0, 0],
1923
+ { position: [0, 1.8399999999999999, 0], rotationY: 0 },
1924
+ 'board 2; exact board, centred and unrotated; grid 0',
1925
+ ],
1926
+ ],
1927
+ },
1928
+ {
1929
+ label: 'contained open-rack, bottom true',
1930
+ host: {
1931
+ object: 'node',
1932
+ id: 'frozen_shelf',
1933
+ type: 'shelf',
1934
+ parentId: null,
1935
+ visible: true,
1936
+ metadata: {},
1937
+ children: [],
1938
+ position: [0, 0, 0],
1939
+ rotation: [0, 0, 0],
1940
+ width: 1.2,
1941
+ depth: 0.4,
1942
+ thickness: 0.04,
1943
+ height: 1.8,
1944
+ style: 'open-rack',
1945
+ rows: 3,
1946
+ columns: 1,
1947
+ withBack: false,
1948
+ withSides: true,
1949
+ withBottom: true,
1950
+ bracketStyle: 'minimal',
1951
+ },
1952
+ rows: [
1953
+ [
1954
+ [0.09, 0.64, -0.035],
1955
+ [0.16, 0.25, 0.12],
1956
+ 0,
1957
+ 1,
1958
+ 0,
1959
+ [0.09, -0.035],
1960
+ { position: [0.09, 0.64, -0.035], rotationY: 0 },
1961
+ 'board 0; small interior; grid 0',
1962
+ ],
1963
+ [
1964
+ [-0.12, 0.64, 0.01],
1965
+ [0.22, 0.2, 0.12],
1966
+ -0.7853981633974483,
1967
+ 1,
1968
+ 0,
1969
+ [-0.12, 0.01],
1970
+ { position: [-0.12, 0.64, 0.01], rotationY: -0.7853981633974483 },
1971
+ 'board 0; contained rotation -45 degrees; grid 0',
1972
+ ],
1973
+ [
1974
+ [0.12, 0.64, -0.01],
1975
+ [0.22, 0.2, 0.12],
1976
+ 0.7853981633974483,
1977
+ 1,
1978
+ 0,
1979
+ [0.12, -0.01],
1980
+ { position: [0.12, 0.64, -0.01], rotationY: 0.7853981633974483 },
1981
+ 'board 0; contained rotation 45 degrees; grid 0',
1982
+ ],
1983
+ [
1984
+ [0.09, 0.64, -0.035],
1985
+ [0.16, 0.25, 0.12],
1986
+ 0,
1987
+ 1,
1988
+ 0.05,
1989
+ [0.08, -0.04000000000000001],
1990
+ { position: [0.08, 0.64, -0.04000000000000001], rotationY: 0 },
1991
+ 'board 0; small interior; grid 0.05',
1992
+ ],
1993
+ [
1994
+ [-0.12, 0.64, 0.01],
1995
+ [0.22, 0.2, 0.12],
1996
+ -0.7853981633974483,
1997
+ 1,
1998
+ 0.05,
1999
+ [-0.14, 0.009999999999999995],
2000
+ { position: [-0.14, 0.64, 0.009999999999999995], rotationY: -0.7853981633974483 },
2001
+ 'board 0; contained rotation -45 degrees; grid 0.05',
2002
+ ],
2003
+ [
2004
+ [0.12, 0.64, -0.01],
2005
+ [0.22, 0.2, 0.12],
2006
+ 0.7853981633974483,
2007
+ 1,
2008
+ 0.05,
2009
+ [0.11, 0.009999999999999995],
2010
+ { position: [0.11, 0.64, 0.009999999999999995], rotationY: 0.7853981633974483 },
2011
+ 'board 0; contained rotation 45 degrees; grid 0.05',
2012
+ ],
2013
+ [
2014
+ [-0.514, 0.64, 0],
2015
+ [0.16, 0.25, 0.12],
2016
+ 0,
2017
+ 1,
2018
+ 0,
2019
+ [-0.514, 0],
2020
+ { position: [-0.514, 0.64, 0], rotationY: 0 },
2021
+ 'board 0; near left edge, 5 mm clearance; grid 0',
2022
+ ],
2023
+ [
2024
+ [0, 0.64, -0.134],
2025
+ [0.16, 0.25, 0.12],
2026
+ 0,
2027
+ 1,
2028
+ 0,
2029
+ [0, -0.134],
2030
+ { position: [0, 0.64, -0.134], rotationY: 0 },
2031
+ 'board 0; near back edge, 5 mm clearance; grid 0',
2032
+ ],
2033
+ [
2034
+ [0.514, 0.64, 0],
2035
+ [0.16, 0.25, 0.12],
2036
+ 0,
2037
+ 1,
2038
+ 0,
2039
+ [0.514, 0],
2040
+ { position: [0.514, 0.64, 0], rotationY: 0 },
2041
+ 'board 0; near right edge, 5 mm clearance; grid 0',
2042
+ ],
2043
+ [
2044
+ [0, 0.64, 0.134],
2045
+ [0.16, 0.25, 0.12],
2046
+ 0,
2047
+ 1,
2048
+ 0,
2049
+ [0, 0.134],
2050
+ { position: [0, 0.64, 0.134], rotationY: 0 },
2051
+ 'board 0; near front edge, 5 mm clearance; grid 0',
2052
+ ],
2053
+ [
2054
+ [0, 0.64, 0],
2055
+ [1.198, 0.2, 0.398],
2056
+ 0,
2057
+ 1,
2058
+ 0,
2059
+ [0, 0],
2060
+ { position: [0, 0.64, 0], rotationY: 0 },
2061
+ 'board 0; exact board, centred and unrotated; grid 0',
2062
+ ],
2063
+ [
2064
+ [0.09, 1.24, -0.035],
2065
+ [0.16, 0.25, 0.12],
2066
+ 0,
2067
+ 1,
2068
+ 0,
2069
+ [0.09, -0.035],
2070
+ { position: [0.09, 1.24, -0.035], rotationY: 0 },
2071
+ 'board 1; small interior; grid 0',
2072
+ ],
2073
+ [
2074
+ [-0.12, 1.24, 0.01],
2075
+ [0.22, 0.2, 0.12],
2076
+ -0.7853981633974483,
2077
+ 1,
2078
+ 0,
2079
+ [-0.12, 0.01],
2080
+ { position: [-0.12, 1.24, 0.01], rotationY: -0.7853981633974483 },
2081
+ 'board 1; contained rotation -45 degrees; grid 0',
2082
+ ],
2083
+ [
2084
+ [0.12, 1.24, -0.01],
2085
+ [0.22, 0.2, 0.12],
2086
+ 0.7853981633974483,
2087
+ 1,
2088
+ 0,
2089
+ [0.12, -0.01],
2090
+ { position: [0.12, 1.24, -0.01], rotationY: 0.7853981633974483 },
2091
+ 'board 1; contained rotation 45 degrees; grid 0',
2092
+ ],
2093
+ [
2094
+ [0.09, 1.24, -0.035],
2095
+ [0.16, 0.25, 0.12],
2096
+ 0,
2097
+ 1,
2098
+ 0.05,
2099
+ [0.08, -0.04000000000000001],
2100
+ { position: [0.08, 1.24, -0.04000000000000001], rotationY: 0 },
2101
+ 'board 1; small interior; grid 0.05',
2102
+ ],
2103
+ [
2104
+ [-0.12, 1.24, 0.01],
2105
+ [0.22, 0.2, 0.12],
2106
+ -0.7853981633974483,
2107
+ 1,
2108
+ 0.05,
2109
+ [-0.14, 0.009999999999999995],
2110
+ { position: [-0.14, 1.24, 0.009999999999999995], rotationY: -0.7853981633974483 },
2111
+ 'board 1; contained rotation -45 degrees; grid 0.05',
2112
+ ],
2113
+ [
2114
+ [0.12, 1.24, -0.01],
2115
+ [0.22, 0.2, 0.12],
2116
+ 0.7853981633974483,
2117
+ 1,
2118
+ 0.05,
2119
+ [0.11, 0.009999999999999995],
2120
+ { position: [0.11, 1.24, 0.009999999999999995], rotationY: 0.7853981633974483 },
2121
+ 'board 1; contained rotation 45 degrees; grid 0.05',
2122
+ ],
2123
+ [
2124
+ [-0.514, 1.24, 0],
2125
+ [0.16, 0.25, 0.12],
2126
+ 0,
2127
+ 1,
2128
+ 0,
2129
+ [-0.514, 0],
2130
+ { position: [-0.514, 1.24, 0], rotationY: 0 },
2131
+ 'board 1; near left edge, 5 mm clearance; grid 0',
2132
+ ],
2133
+ [
2134
+ [0, 1.24, -0.134],
2135
+ [0.16, 0.25, 0.12],
2136
+ 0,
2137
+ 1,
2138
+ 0,
2139
+ [0, -0.134],
2140
+ { position: [0, 1.24, -0.134], rotationY: 0 },
2141
+ 'board 1; near back edge, 5 mm clearance; grid 0',
2142
+ ],
2143
+ [
2144
+ [0.514, 1.24, 0],
2145
+ [0.16, 0.25, 0.12],
2146
+ 0,
2147
+ 1,
2148
+ 0,
2149
+ [0.514, 0],
2150
+ { position: [0.514, 1.24, 0], rotationY: 0 },
2151
+ 'board 1; near right edge, 5 mm clearance; grid 0',
2152
+ ],
2153
+ [
2154
+ [0, 1.24, 0.134],
2155
+ [0.16, 0.25, 0.12],
2156
+ 0,
2157
+ 1,
2158
+ 0,
2159
+ [0, 0.134],
2160
+ { position: [0, 1.24, 0.134], rotationY: 0 },
2161
+ 'board 1; near front edge, 5 mm clearance; grid 0',
2162
+ ],
2163
+ [
2164
+ [0, 1.24, 0],
2165
+ [1.198, 0.2, 0.398],
2166
+ 0,
2167
+ 1,
2168
+ 0,
2169
+ [0, 0],
2170
+ { position: [0, 1.24, 0], rotationY: 0 },
2171
+ 'board 1; exact board, centred and unrotated; grid 0',
2172
+ ],
2173
+ [
2174
+ [0.09, 1.8399999999999999, -0.035],
2175
+ [0.16, 0.25, 0.12],
2176
+ 0,
2177
+ 1,
2178
+ 0,
2179
+ [0.09, -0.035],
2180
+ { position: [0.09, 1.8399999999999999, -0.035], rotationY: 0 },
2181
+ 'board 2; small interior; grid 0',
2182
+ ],
2183
+ [
2184
+ [-0.12, 1.8399999999999999, 0.01],
2185
+ [0.22, 0.2, 0.12],
2186
+ -0.7853981633974483,
2187
+ 1,
2188
+ 0,
2189
+ [-0.12, 0.01],
2190
+ { position: [-0.12, 1.8399999999999999, 0.01], rotationY: -0.7853981633974483 },
2191
+ 'board 2; contained rotation -45 degrees; grid 0',
2192
+ ],
2193
+ [
2194
+ [0.12, 1.8399999999999999, -0.01],
2195
+ [0.22, 0.2, 0.12],
2196
+ 0.7853981633974483,
2197
+ 1,
2198
+ 0,
2199
+ [0.12, -0.01],
2200
+ { position: [0.12, 1.8399999999999999, -0.01], rotationY: 0.7853981633974483 },
2201
+ 'board 2; contained rotation 45 degrees; grid 0',
2202
+ ],
2203
+ [
2204
+ [0.09, 1.8399999999999999, -0.035],
2205
+ [0.16, 0.25, 0.12],
2206
+ 0,
2207
+ 1,
2208
+ 0.05,
2209
+ [0.08, -0.04000000000000001],
2210
+ { position: [0.08, 1.8399999999999999, -0.04000000000000001], rotationY: 0 },
2211
+ 'board 2; small interior; grid 0.05',
2212
+ ],
2213
+ [
2214
+ [-0.12, 1.8399999999999999, 0.01],
2215
+ [0.22, 0.2, 0.12],
2216
+ -0.7853981633974483,
2217
+ 1,
2218
+ 0.05,
2219
+ [-0.14, 0.009999999999999995],
2220
+ {
2221
+ position: [-0.14, 1.8399999999999999, 0.009999999999999995],
2222
+ rotationY: -0.7853981633974483,
2223
+ },
2224
+ 'board 2; contained rotation -45 degrees; grid 0.05',
2225
+ ],
2226
+ [
2227
+ [0.12, 1.8399999999999999, -0.01],
2228
+ [0.22, 0.2, 0.12],
2229
+ 0.7853981633974483,
2230
+ 1,
2231
+ 0.05,
2232
+ [0.11, 0.009999999999999995],
2233
+ {
2234
+ position: [0.11, 1.8399999999999999, 0.009999999999999995],
2235
+ rotationY: 0.7853981633974483,
2236
+ },
2237
+ 'board 2; contained rotation 45 degrees; grid 0.05',
2238
+ ],
2239
+ [
2240
+ [-0.514, 1.8399999999999999, 0],
2241
+ [0.16, 0.25, 0.12],
2242
+ 0,
2243
+ 1,
2244
+ 0,
2245
+ [-0.514, 0],
2246
+ { position: [-0.514, 1.8399999999999999, 0], rotationY: 0 },
2247
+ 'board 2; near left edge, 5 mm clearance; grid 0',
2248
+ ],
2249
+ [
2250
+ [0, 1.8399999999999999, -0.134],
2251
+ [0.16, 0.25, 0.12],
2252
+ 0,
2253
+ 1,
2254
+ 0,
2255
+ [0, -0.134],
2256
+ { position: [0, 1.8399999999999999, -0.134], rotationY: 0 },
2257
+ 'board 2; near back edge, 5 mm clearance; grid 0',
2258
+ ],
2259
+ [
2260
+ [0.514, 1.8399999999999999, 0],
2261
+ [0.16, 0.25, 0.12],
2262
+ 0,
2263
+ 1,
2264
+ 0,
2265
+ [0.514, 0],
2266
+ { position: [0.514, 1.8399999999999999, 0], rotationY: 0 },
2267
+ 'board 2; near right edge, 5 mm clearance; grid 0',
2268
+ ],
2269
+ [
2270
+ [0, 1.8399999999999999, 0.134],
2271
+ [0.16, 0.25, 0.12],
2272
+ 0,
2273
+ 1,
2274
+ 0,
2275
+ [0, 0.134],
2276
+ { position: [0, 1.8399999999999999, 0.134], rotationY: 0 },
2277
+ 'board 2; near front edge, 5 mm clearance; grid 0',
2278
+ ],
2279
+ [
2280
+ [0, 1.8399999999999999, 0],
2281
+ [1.198, 0.2, 0.398],
2282
+ 0,
2283
+ 1,
2284
+ 0,
2285
+ [0, 0],
2286
+ { position: [0, 1.8399999999999999, 0], rotationY: 0 },
2287
+ 'board 2; exact board, centred and unrotated; grid 0',
2288
+ ],
2289
+ ],
2290
+ },
2291
+ {
2292
+ label: 'contained cubby, bottom false',
2293
+ host: {
2294
+ object: 'node',
2295
+ id: 'frozen_shelf',
2296
+ type: 'shelf',
2297
+ parentId: null,
2298
+ visible: true,
2299
+ metadata: {},
2300
+ children: [],
2301
+ position: [0, 0, 0],
2302
+ rotation: [0, 0, 0],
2303
+ width: 1.2,
2304
+ depth: 0.4,
2305
+ thickness: 0.04,
2306
+ height: 1.8,
2307
+ style: 'cubby',
2308
+ rows: 3,
2309
+ columns: 1,
2310
+ withBack: false,
2311
+ withSides: true,
2312
+ withBottom: false,
2313
+ bracketStyle: 'minimal',
2314
+ },
2315
+ rows: [
2316
+ [
2317
+ [0.09, 0.64, -0.035],
2318
+ [0.16, 0.25, 0.12],
2319
+ 0,
2320
+ 1,
2321
+ 0,
2322
+ [0.09, -0.035],
2323
+ { position: [0.09, 0.64, -0.035], rotationY: 0 },
2324
+ 'board 0; small interior; grid 0',
2325
+ ],
2326
+ [
2327
+ [-0.12, 0.64, 0.01],
2328
+ [0.22, 0.2, 0.12],
2329
+ -0.7853981633974483,
2330
+ 1,
2331
+ 0,
2332
+ [-0.12, 0.01],
2333
+ { position: [-0.12, 0.64, 0.01], rotationY: -0.7853981633974483 },
2334
+ 'board 0; contained rotation -45 degrees; grid 0',
2335
+ ],
2336
+ [
2337
+ [0.12, 0.64, -0.01],
2338
+ [0.22, 0.2, 0.12],
2339
+ 0.7853981633974483,
2340
+ 1,
2341
+ 0,
2342
+ [0.12, -0.01],
2343
+ { position: [0.12, 0.64, -0.01], rotationY: 0.7853981633974483 },
2344
+ 'board 0; contained rotation 45 degrees; grid 0',
2345
+ ],
2346
+ [
2347
+ [0.09, 0.64, -0.035],
2348
+ [0.16, 0.25, 0.12],
2349
+ 0,
2350
+ 1,
2351
+ 0.05,
2352
+ [0.08, -0.04000000000000001],
2353
+ { position: [0.08, 0.64, -0.04000000000000001], rotationY: 0 },
2354
+ 'board 0; small interior; grid 0.05',
2355
+ ],
2356
+ [
2357
+ [-0.12, 0.64, 0.01],
2358
+ [0.22, 0.2, 0.12],
2359
+ -0.7853981633974483,
2360
+ 1,
2361
+ 0.05,
2362
+ [-0.14, 0.009999999999999995],
2363
+ { position: [-0.14, 0.64, 0.009999999999999995], rotationY: -0.7853981633974483 },
2364
+ 'board 0; contained rotation -45 degrees; grid 0.05',
2365
+ ],
2366
+ [
2367
+ [0.12, 0.64, -0.01],
2368
+ [0.22, 0.2, 0.12],
2369
+ 0.7853981633974483,
2370
+ 1,
2371
+ 0.05,
2372
+ [0.11, 0.009999999999999995],
2373
+ { position: [0.11, 0.64, 0.009999999999999995], rotationY: 0.7853981633974483 },
2374
+ 'board 0; contained rotation 45 degrees; grid 0.05',
2375
+ ],
2376
+ [
2377
+ [-0.4749999999999999, 0.64, 0],
2378
+ [0.16, 0.25, 0.12],
2379
+ 0,
2380
+ 1,
2381
+ 0,
2382
+ [-0.4749999999999999, 0],
2383
+ { position: [-0.4749999999999999, 0.64, 0], rotationY: 0 },
2384
+ 'board 0; near left edge, 5 mm clearance; grid 0',
2385
+ ],
2386
+ [
2387
+ [0, 0.64, -0.134],
2388
+ [0.16, 0.25, 0.12],
2389
+ 0,
2390
+ 1,
2391
+ 0,
2392
+ [0, -0.134],
2393
+ { position: [0, 0.64, -0.134], rotationY: 0 },
2394
+ 'board 0; near back edge, 5 mm clearance; grid 0',
2395
+ ],
2396
+ [
2397
+ [0.4749999999999999, 0.64, 0],
2398
+ [0.16, 0.25, 0.12],
2399
+ 0,
2400
+ 1,
2401
+ 0,
2402
+ [0.4749999999999999, 0],
2403
+ { position: [0.4749999999999999, 0.64, 0], rotationY: 0 },
2404
+ 'board 0; near right edge, 5 mm clearance; grid 0',
2405
+ ],
2406
+ [
2407
+ [0, 0.64, 0.134],
2408
+ [0.16, 0.25, 0.12],
2409
+ 0,
2410
+ 1,
2411
+ 0,
2412
+ [0, 0.134],
2413
+ { position: [0, 0.64, 0.134], rotationY: 0 },
2414
+ 'board 0; near front edge, 5 mm clearance; grid 0',
2415
+ ],
2416
+ [
2417
+ [0, 0.64, 0],
2418
+ [1.1199999999999999, 0.2, 0.398],
2419
+ 0,
2420
+ 1,
2421
+ 0,
2422
+ [0, 0],
2423
+ { position: [0, 0.64, 0], rotationY: 0 },
2424
+ 'board 0; exact board, centred and unrotated; grid 0',
2425
+ ],
2426
+ [
2427
+ [0.09, 1.24, -0.035],
2428
+ [0.16, 0.25, 0.12],
2429
+ 0,
2430
+ 1,
2431
+ 0,
2432
+ [0.09, -0.035],
2433
+ { position: [0.09, 1.24, -0.035], rotationY: 0 },
2434
+ 'board 1; small interior; grid 0',
2435
+ ],
2436
+ [
2437
+ [-0.12, 1.24, 0.01],
2438
+ [0.22, 0.2, 0.12],
2439
+ -0.7853981633974483,
2440
+ 1,
2441
+ 0,
2442
+ [-0.12, 0.01],
2443
+ { position: [-0.12, 1.24, 0.01], rotationY: -0.7853981633974483 },
2444
+ 'board 1; contained rotation -45 degrees; grid 0',
2445
+ ],
2446
+ [
2447
+ [0.12, 1.24, -0.01],
2448
+ [0.22, 0.2, 0.12],
2449
+ 0.7853981633974483,
2450
+ 1,
2451
+ 0,
2452
+ [0.12, -0.01],
2453
+ { position: [0.12, 1.24, -0.01], rotationY: 0.7853981633974483 },
2454
+ 'board 1; contained rotation 45 degrees; grid 0',
2455
+ ],
2456
+ [
2457
+ [0.09, 1.24, -0.035],
2458
+ [0.16, 0.25, 0.12],
2459
+ 0,
2460
+ 1,
2461
+ 0.05,
2462
+ [0.08, -0.04000000000000001],
2463
+ { position: [0.08, 1.24, -0.04000000000000001], rotationY: 0 },
2464
+ 'board 1; small interior; grid 0.05',
2465
+ ],
2466
+ [
2467
+ [-0.12, 1.24, 0.01],
2468
+ [0.22, 0.2, 0.12],
2469
+ -0.7853981633974483,
2470
+ 1,
2471
+ 0.05,
2472
+ [-0.14, 0.009999999999999995],
2473
+ { position: [-0.14, 1.24, 0.009999999999999995], rotationY: -0.7853981633974483 },
2474
+ 'board 1; contained rotation -45 degrees; grid 0.05',
2475
+ ],
2476
+ [
2477
+ [0.12, 1.24, -0.01],
2478
+ [0.22, 0.2, 0.12],
2479
+ 0.7853981633974483,
2480
+ 1,
2481
+ 0.05,
2482
+ [0.11, 0.009999999999999995],
2483
+ { position: [0.11, 1.24, 0.009999999999999995], rotationY: 0.7853981633974483 },
2484
+ 'board 1; contained rotation 45 degrees; grid 0.05',
2485
+ ],
2486
+ [
2487
+ [-0.4749999999999999, 1.24, 0],
2488
+ [0.16, 0.25, 0.12],
2489
+ 0,
2490
+ 1,
2491
+ 0,
2492
+ [-0.4749999999999999, 0],
2493
+ { position: [-0.4749999999999999, 1.24, 0], rotationY: 0 },
2494
+ 'board 1; near left edge, 5 mm clearance; grid 0',
2495
+ ],
2496
+ [
2497
+ [0, 1.24, -0.134],
2498
+ [0.16, 0.25, 0.12],
2499
+ 0,
2500
+ 1,
2501
+ 0,
2502
+ [0, -0.134],
2503
+ { position: [0, 1.24, -0.134], rotationY: 0 },
2504
+ 'board 1; near back edge, 5 mm clearance; grid 0',
2505
+ ],
2506
+ [
2507
+ [0.4749999999999999, 1.24, 0],
2508
+ [0.16, 0.25, 0.12],
2509
+ 0,
2510
+ 1,
2511
+ 0,
2512
+ [0.4749999999999999, 0],
2513
+ { position: [0.4749999999999999, 1.24, 0], rotationY: 0 },
2514
+ 'board 1; near right edge, 5 mm clearance; grid 0',
2515
+ ],
2516
+ [
2517
+ [0, 1.24, 0.134],
2518
+ [0.16, 0.25, 0.12],
2519
+ 0,
2520
+ 1,
2521
+ 0,
2522
+ [0, 0.134],
2523
+ { position: [0, 1.24, 0.134], rotationY: 0 },
2524
+ 'board 1; near front edge, 5 mm clearance; grid 0',
2525
+ ],
2526
+ [
2527
+ [0, 1.24, 0],
2528
+ [1.1199999999999999, 0.2, 0.398],
2529
+ 0,
2530
+ 1,
2531
+ 0,
2532
+ [0, 0],
2533
+ { position: [0, 1.24, 0], rotationY: 0 },
2534
+ 'board 1; exact board, centred and unrotated; grid 0',
2535
+ ],
2536
+ [
2537
+ [0.09, 1.8399999999999999, -0.035],
2538
+ [0.16, 0.25, 0.12],
2539
+ 0,
2540
+ 1,
2541
+ 0,
2542
+ [0.09, -0.035],
2543
+ { position: [0.09, 1.8399999999999999, -0.035], rotationY: 0 },
2544
+ 'board 2; small interior; grid 0',
2545
+ ],
2546
+ [
2547
+ [-0.12, 1.8399999999999999, 0.01],
2548
+ [0.22, 0.2, 0.12],
2549
+ -0.7853981633974483,
2550
+ 1,
2551
+ 0,
2552
+ [-0.12, 0.01],
2553
+ { position: [-0.12, 1.8399999999999999, 0.01], rotationY: -0.7853981633974483 },
2554
+ 'board 2; contained rotation -45 degrees; grid 0',
2555
+ ],
2556
+ [
2557
+ [0.12, 1.8399999999999999, -0.01],
2558
+ [0.22, 0.2, 0.12],
2559
+ 0.7853981633974483,
2560
+ 1,
2561
+ 0,
2562
+ [0.12, -0.01],
2563
+ { position: [0.12, 1.8399999999999999, -0.01], rotationY: 0.7853981633974483 },
2564
+ 'board 2; contained rotation 45 degrees; grid 0',
2565
+ ],
2566
+ [
2567
+ [0.09, 1.8399999999999999, -0.035],
2568
+ [0.16, 0.25, 0.12],
2569
+ 0,
2570
+ 1,
2571
+ 0.05,
2572
+ [0.08, -0.04000000000000001],
2573
+ { position: [0.08, 1.8399999999999999, -0.04000000000000001], rotationY: 0 },
2574
+ 'board 2; small interior; grid 0.05',
2575
+ ],
2576
+ [
2577
+ [-0.12, 1.8399999999999999, 0.01],
2578
+ [0.22, 0.2, 0.12],
2579
+ -0.7853981633974483,
2580
+ 1,
2581
+ 0.05,
2582
+ [-0.14, 0.009999999999999995],
2583
+ {
2584
+ position: [-0.14, 1.8399999999999999, 0.009999999999999995],
2585
+ rotationY: -0.7853981633974483,
2586
+ },
2587
+ 'board 2; contained rotation -45 degrees; grid 0.05',
2588
+ ],
2589
+ [
2590
+ [0.12, 1.8399999999999999, -0.01],
2591
+ [0.22, 0.2, 0.12],
2592
+ 0.7853981633974483,
2593
+ 1,
2594
+ 0.05,
2595
+ [0.11, 0.009999999999999995],
2596
+ {
2597
+ position: [0.11, 1.8399999999999999, 0.009999999999999995],
2598
+ rotationY: 0.7853981633974483,
2599
+ },
2600
+ 'board 2; contained rotation 45 degrees; grid 0.05',
2601
+ ],
2602
+ [
2603
+ [-0.4749999999999999, 1.8399999999999999, 0],
2604
+ [0.16, 0.25, 0.12],
2605
+ 0,
2606
+ 1,
2607
+ 0,
2608
+ [-0.4749999999999999, 0],
2609
+ { position: [-0.4749999999999999, 1.8399999999999999, 0], rotationY: 0 },
2610
+ 'board 2; near left edge, 5 mm clearance; grid 0',
2611
+ ],
2612
+ [
2613
+ [0, 1.8399999999999999, -0.134],
2614
+ [0.16, 0.25, 0.12],
2615
+ 0,
2616
+ 1,
2617
+ 0,
2618
+ [0, -0.134],
2619
+ { position: [0, 1.8399999999999999, -0.134], rotationY: 0 },
2620
+ 'board 2; near back edge, 5 mm clearance; grid 0',
2621
+ ],
2622
+ [
2623
+ [0.4749999999999999, 1.8399999999999999, 0],
2624
+ [0.16, 0.25, 0.12],
2625
+ 0,
2626
+ 1,
2627
+ 0,
2628
+ [0.4749999999999999, 0],
2629
+ { position: [0.4749999999999999, 1.8399999999999999, 0], rotationY: 0 },
2630
+ 'board 2; near right edge, 5 mm clearance; grid 0',
2631
+ ],
2632
+ [
2633
+ [0, 1.8399999999999999, 0.134],
2634
+ [0.16, 0.25, 0.12],
2635
+ 0,
2636
+ 1,
2637
+ 0,
2638
+ [0, 0.134],
2639
+ { position: [0, 1.8399999999999999, 0.134], rotationY: 0 },
2640
+ 'board 2; near front edge, 5 mm clearance; grid 0',
2641
+ ],
2642
+ [
2643
+ [0, 1.8399999999999999, 0],
2644
+ [1.1199999999999999, 0.2, 0.398],
2645
+ 0,
2646
+ 1,
2647
+ 0,
2648
+ [0, 0],
2649
+ { position: [0, 1.8399999999999999, 0], rotationY: 0 },
2650
+ 'board 2; exact board, centred and unrotated; grid 0',
2651
+ ],
2652
+ ],
2653
+ },
2654
+ {
2655
+ label: 'contained cubby, bottom true',
2656
+ host: {
2657
+ object: 'node',
2658
+ id: 'frozen_shelf',
2659
+ type: 'shelf',
2660
+ parentId: null,
2661
+ visible: true,
2662
+ metadata: {},
2663
+ children: [],
2664
+ position: [0, 0, 0],
2665
+ rotation: [0, 0, 0],
2666
+ width: 1.2,
2667
+ depth: 0.4,
2668
+ thickness: 0.04,
2669
+ height: 1.8,
2670
+ style: 'cubby',
2671
+ rows: 3,
2672
+ columns: 1,
2673
+ withBack: false,
2674
+ withSides: true,
2675
+ withBottom: true,
2676
+ bracketStyle: 'minimal',
2677
+ },
2678
+ rows: [
2679
+ [
2680
+ [0.09, 0.04, -0.035],
2681
+ [0.16, 0.25, 0.12],
2682
+ 0,
2683
+ 1,
2684
+ 0,
2685
+ [0.09, -0.035],
2686
+ { position: [0.09, 0.04, -0.035], rotationY: 0 },
2687
+ 'board 0; small interior; grid 0',
2688
+ ],
2689
+ [
2690
+ [-0.12, 0.04, 0.01],
2691
+ [0.22, 0.2, 0.12],
2692
+ -0.7853981633974483,
2693
+ 1,
2694
+ 0,
2695
+ [-0.12, 0.01],
2696
+ { position: [-0.12, 0.04, 0.01], rotationY: -0.7853981633974483 },
2697
+ 'board 0; contained rotation -45 degrees; grid 0',
2698
+ ],
2699
+ [
2700
+ [0.12, 0.04, -0.01],
2701
+ [0.22, 0.2, 0.12],
2702
+ 0.7853981633974483,
2703
+ 1,
2704
+ 0,
2705
+ [0.12, -0.01],
2706
+ { position: [0.12, 0.04, -0.01], rotationY: 0.7853981633974483 },
2707
+ 'board 0; contained rotation 45 degrees; grid 0',
2708
+ ],
2709
+ [
2710
+ [0.09, 0.04, -0.035],
2711
+ [0.16, 0.25, 0.12],
2712
+ 0,
2713
+ 1,
2714
+ 0.05,
2715
+ [0.08, -0.04000000000000001],
2716
+ { position: [0.08, 0.04, -0.04000000000000001], rotationY: 0 },
2717
+ 'board 0; small interior; grid 0.05',
2718
+ ],
2719
+ [
2720
+ [-0.12, 0.04, 0.01],
2721
+ [0.22, 0.2, 0.12],
2722
+ -0.7853981633974483,
2723
+ 1,
2724
+ 0.05,
2725
+ [-0.14, 0.009999999999999995],
2726
+ { position: [-0.14, 0.04, 0.009999999999999995], rotationY: -0.7853981633974483 },
2727
+ 'board 0; contained rotation -45 degrees; grid 0.05',
2728
+ ],
2729
+ [
2730
+ [0.12, 0.04, -0.01],
2731
+ [0.22, 0.2, 0.12],
2732
+ 0.7853981633974483,
2733
+ 1,
2734
+ 0.05,
2735
+ [0.11, 0.009999999999999995],
2736
+ { position: [0.11, 0.04, 0.009999999999999995], rotationY: 0.7853981633974483 },
2737
+ 'board 0; contained rotation 45 degrees; grid 0.05',
2738
+ ],
2739
+ [
2740
+ [-0.4749999999999999, 0.04, 0],
2741
+ [0.16, 0.25, 0.12],
2742
+ 0,
2743
+ 1,
2744
+ 0,
2745
+ [-0.4749999999999999, 0],
2746
+ { position: [-0.4749999999999999, 0.04, 0], rotationY: 0 },
2747
+ 'board 0; near left edge, 5 mm clearance; grid 0',
2748
+ ],
2749
+ [
2750
+ [0, 0.04, -0.134],
2751
+ [0.16, 0.25, 0.12],
2752
+ 0,
2753
+ 1,
2754
+ 0,
2755
+ [0, -0.134],
2756
+ { position: [0, 0.04, -0.134], rotationY: 0 },
2757
+ 'board 0; near back edge, 5 mm clearance; grid 0',
2758
+ ],
2759
+ [
2760
+ [0.4749999999999999, 0.04, 0],
2761
+ [0.16, 0.25, 0.12],
2762
+ 0,
2763
+ 1,
2764
+ 0,
2765
+ [0.4749999999999999, 0],
2766
+ { position: [0.4749999999999999, 0.04, 0], rotationY: 0 },
2767
+ 'board 0; near right edge, 5 mm clearance; grid 0',
2768
+ ],
2769
+ [
2770
+ [0, 0.04, 0.134],
2771
+ [0.16, 0.25, 0.12],
2772
+ 0,
2773
+ 1,
2774
+ 0,
2775
+ [0, 0.134],
2776
+ { position: [0, 0.04, 0.134], rotationY: 0 },
2777
+ 'board 0; near front edge, 5 mm clearance; grid 0',
2778
+ ],
2779
+ [
2780
+ [0, 0.04, 0],
2781
+ [1.1199999999999999, 0.2, 0.398],
2782
+ 0,
2783
+ 1,
2784
+ 0,
2785
+ [0, 0],
2786
+ { position: [0, 0.04, 0], rotationY: 0 },
2787
+ 'board 0; exact board, centred and unrotated; grid 0',
2788
+ ],
2789
+ [
2790
+ [0.09, 0.64, -0.035],
2791
+ [0.16, 0.25, 0.12],
2792
+ 0,
2793
+ 1,
2794
+ 0,
2795
+ [0.09, -0.035],
2796
+ { position: [0.09, 0.64, -0.035], rotationY: 0 },
2797
+ 'board 1; small interior; grid 0',
2798
+ ],
2799
+ [
2800
+ [-0.12, 0.64, 0.01],
2801
+ [0.22, 0.2, 0.12],
2802
+ -0.7853981633974483,
2803
+ 1,
2804
+ 0,
2805
+ [-0.12, 0.01],
2806
+ { position: [-0.12, 0.64, 0.01], rotationY: -0.7853981633974483 },
2807
+ 'board 1; contained rotation -45 degrees; grid 0',
2808
+ ],
2809
+ [
2810
+ [0.12, 0.64, -0.01],
2811
+ [0.22, 0.2, 0.12],
2812
+ 0.7853981633974483,
2813
+ 1,
2814
+ 0,
2815
+ [0.12, -0.01],
2816
+ { position: [0.12, 0.64, -0.01], rotationY: 0.7853981633974483 },
2817
+ 'board 1; contained rotation 45 degrees; grid 0',
2818
+ ],
2819
+ [
2820
+ [0.09, 0.64, -0.035],
2821
+ [0.16, 0.25, 0.12],
2822
+ 0,
2823
+ 1,
2824
+ 0.05,
2825
+ [0.08, -0.04000000000000001],
2826
+ { position: [0.08, 0.64, -0.04000000000000001], rotationY: 0 },
2827
+ 'board 1; small interior; grid 0.05',
2828
+ ],
2829
+ [
2830
+ [-0.12, 0.64, 0.01],
2831
+ [0.22, 0.2, 0.12],
2832
+ -0.7853981633974483,
2833
+ 1,
2834
+ 0.05,
2835
+ [-0.14, 0.009999999999999995],
2836
+ { position: [-0.14, 0.64, 0.009999999999999995], rotationY: -0.7853981633974483 },
2837
+ 'board 1; contained rotation -45 degrees; grid 0.05',
2838
+ ],
2839
+ [
2840
+ [0.12, 0.64, -0.01],
2841
+ [0.22, 0.2, 0.12],
2842
+ 0.7853981633974483,
2843
+ 1,
2844
+ 0.05,
2845
+ [0.11, 0.009999999999999995],
2846
+ { position: [0.11, 0.64, 0.009999999999999995], rotationY: 0.7853981633974483 },
2847
+ 'board 1; contained rotation 45 degrees; grid 0.05',
2848
+ ],
2849
+ [
2850
+ [-0.4749999999999999, 0.64, 0],
2851
+ [0.16, 0.25, 0.12],
2852
+ 0,
2853
+ 1,
2854
+ 0,
2855
+ [-0.4749999999999999, 0],
2856
+ { position: [-0.4749999999999999, 0.64, 0], rotationY: 0 },
2857
+ 'board 1; near left edge, 5 mm clearance; grid 0',
2858
+ ],
2859
+ [
2860
+ [0, 0.64, -0.134],
2861
+ [0.16, 0.25, 0.12],
2862
+ 0,
2863
+ 1,
2864
+ 0,
2865
+ [0, -0.134],
2866
+ { position: [0, 0.64, -0.134], rotationY: 0 },
2867
+ 'board 1; near back edge, 5 mm clearance; grid 0',
2868
+ ],
2869
+ [
2870
+ [0.4749999999999999, 0.64, 0],
2871
+ [0.16, 0.25, 0.12],
2872
+ 0,
2873
+ 1,
2874
+ 0,
2875
+ [0.4749999999999999, 0],
2876
+ { position: [0.4749999999999999, 0.64, 0], rotationY: 0 },
2877
+ 'board 1; near right edge, 5 mm clearance; grid 0',
2878
+ ],
2879
+ [
2880
+ [0, 0.64, 0.134],
2881
+ [0.16, 0.25, 0.12],
2882
+ 0,
2883
+ 1,
2884
+ 0,
2885
+ [0, 0.134],
2886
+ { position: [0, 0.64, 0.134], rotationY: 0 },
2887
+ 'board 1; near front edge, 5 mm clearance; grid 0',
2888
+ ],
2889
+ [
2890
+ [0, 0.64, 0],
2891
+ [1.1199999999999999, 0.2, 0.398],
2892
+ 0,
2893
+ 1,
2894
+ 0,
2895
+ [0, 0],
2896
+ { position: [0, 0.64, 0], rotationY: 0 },
2897
+ 'board 1; exact board, centred and unrotated; grid 0',
2898
+ ],
2899
+ [
2900
+ [0.09, 1.24, -0.035],
2901
+ [0.16, 0.25, 0.12],
2902
+ 0,
2903
+ 1,
2904
+ 0,
2905
+ [0.09, -0.035],
2906
+ { position: [0.09, 1.24, -0.035], rotationY: 0 },
2907
+ 'board 2; small interior; grid 0',
2908
+ ],
2909
+ [
2910
+ [-0.12, 1.24, 0.01],
2911
+ [0.22, 0.2, 0.12],
2912
+ -0.7853981633974483,
2913
+ 1,
2914
+ 0,
2915
+ [-0.12, 0.01],
2916
+ { position: [-0.12, 1.24, 0.01], rotationY: -0.7853981633974483 },
2917
+ 'board 2; contained rotation -45 degrees; grid 0',
2918
+ ],
2919
+ [
2920
+ [0.12, 1.24, -0.01],
2921
+ [0.22, 0.2, 0.12],
2922
+ 0.7853981633974483,
2923
+ 1,
2924
+ 0,
2925
+ [0.12, -0.01],
2926
+ { position: [0.12, 1.24, -0.01], rotationY: 0.7853981633974483 },
2927
+ 'board 2; contained rotation 45 degrees; grid 0',
2928
+ ],
2929
+ [
2930
+ [0.09, 1.24, -0.035],
2931
+ [0.16, 0.25, 0.12],
2932
+ 0,
2933
+ 1,
2934
+ 0.05,
2935
+ [0.08, -0.04000000000000001],
2936
+ { position: [0.08, 1.24, -0.04000000000000001], rotationY: 0 },
2937
+ 'board 2; small interior; grid 0.05',
2938
+ ],
2939
+ [
2940
+ [-0.12, 1.24, 0.01],
2941
+ [0.22, 0.2, 0.12],
2942
+ -0.7853981633974483,
2943
+ 1,
2944
+ 0.05,
2945
+ [-0.14, 0.009999999999999995],
2946
+ { position: [-0.14, 1.24, 0.009999999999999995], rotationY: -0.7853981633974483 },
2947
+ 'board 2; contained rotation -45 degrees; grid 0.05',
2948
+ ],
2949
+ [
2950
+ [0.12, 1.24, -0.01],
2951
+ [0.22, 0.2, 0.12],
2952
+ 0.7853981633974483,
2953
+ 1,
2954
+ 0.05,
2955
+ [0.11, 0.009999999999999995],
2956
+ { position: [0.11, 1.24, 0.009999999999999995], rotationY: 0.7853981633974483 },
2957
+ 'board 2; contained rotation 45 degrees; grid 0.05',
2958
+ ],
2959
+ [
2960
+ [-0.4749999999999999, 1.24, 0],
2961
+ [0.16, 0.25, 0.12],
2962
+ 0,
2963
+ 1,
2964
+ 0,
2965
+ [-0.4749999999999999, 0],
2966
+ { position: [-0.4749999999999999, 1.24, 0], rotationY: 0 },
2967
+ 'board 2; near left edge, 5 mm clearance; grid 0',
2968
+ ],
2969
+ [
2970
+ [0, 1.24, -0.134],
2971
+ [0.16, 0.25, 0.12],
2972
+ 0,
2973
+ 1,
2974
+ 0,
2975
+ [0, -0.134],
2976
+ { position: [0, 1.24, -0.134], rotationY: 0 },
2977
+ 'board 2; near back edge, 5 mm clearance; grid 0',
2978
+ ],
2979
+ [
2980
+ [0.4749999999999999, 1.24, 0],
2981
+ [0.16, 0.25, 0.12],
2982
+ 0,
2983
+ 1,
2984
+ 0,
2985
+ [0.4749999999999999, 0],
2986
+ { position: [0.4749999999999999, 1.24, 0], rotationY: 0 },
2987
+ 'board 2; near right edge, 5 mm clearance; grid 0',
2988
+ ],
2989
+ [
2990
+ [0, 1.24, 0.134],
2991
+ [0.16, 0.25, 0.12],
2992
+ 0,
2993
+ 1,
2994
+ 0,
2995
+ [0, 0.134],
2996
+ { position: [0, 1.24, 0.134], rotationY: 0 },
2997
+ 'board 2; near front edge, 5 mm clearance; grid 0',
2998
+ ],
2999
+ [
3000
+ [0, 1.24, 0],
3001
+ [1.1199999999999999, 0.2, 0.398],
3002
+ 0,
3003
+ 1,
3004
+ 0,
3005
+ [0, 0],
3006
+ { position: [0, 1.24, 0], rotationY: 0 },
3007
+ 'board 2; exact board, centred and unrotated; grid 0',
3008
+ ],
3009
+ [
3010
+ [0.09, 1.8399999999999999, -0.035],
3011
+ [0.16, 0.25, 0.12],
3012
+ 0,
3013
+ 1,
3014
+ 0,
3015
+ [0.09, -0.035],
3016
+ { position: [0.09, 1.8399999999999999, -0.035], rotationY: 0 },
3017
+ 'board 3; small interior; grid 0',
3018
+ ],
3019
+ [
3020
+ [-0.12, 1.8399999999999999, 0.01],
3021
+ [0.22, 0.2, 0.12],
3022
+ -0.7853981633974483,
3023
+ 1,
3024
+ 0,
3025
+ [-0.12, 0.01],
3026
+ { position: [-0.12, 1.8399999999999999, 0.01], rotationY: -0.7853981633974483 },
3027
+ 'board 3; contained rotation -45 degrees; grid 0',
3028
+ ],
3029
+ [
3030
+ [0.12, 1.8399999999999999, -0.01],
3031
+ [0.22, 0.2, 0.12],
3032
+ 0.7853981633974483,
3033
+ 1,
3034
+ 0,
3035
+ [0.12, -0.01],
3036
+ { position: [0.12, 1.8399999999999999, -0.01], rotationY: 0.7853981633974483 },
3037
+ 'board 3; contained rotation 45 degrees; grid 0',
3038
+ ],
3039
+ [
3040
+ [0.09, 1.8399999999999999, -0.035],
3041
+ [0.16, 0.25, 0.12],
3042
+ 0,
3043
+ 1,
3044
+ 0.05,
3045
+ [0.08, -0.04000000000000001],
3046
+ { position: [0.08, 1.8399999999999999, -0.04000000000000001], rotationY: 0 },
3047
+ 'board 3; small interior; grid 0.05',
3048
+ ],
3049
+ [
3050
+ [-0.12, 1.8399999999999999, 0.01],
3051
+ [0.22, 0.2, 0.12],
3052
+ -0.7853981633974483,
3053
+ 1,
3054
+ 0.05,
3055
+ [-0.14, 0.009999999999999995],
3056
+ {
3057
+ position: [-0.14, 1.8399999999999999, 0.009999999999999995],
3058
+ rotationY: -0.7853981633974483,
3059
+ },
3060
+ 'board 3; contained rotation -45 degrees; grid 0.05',
3061
+ ],
3062
+ [
3063
+ [0.12, 1.8399999999999999, -0.01],
3064
+ [0.22, 0.2, 0.12],
3065
+ 0.7853981633974483,
3066
+ 1,
3067
+ 0.05,
3068
+ [0.11, 0.009999999999999995],
3069
+ {
3070
+ position: [0.11, 1.8399999999999999, 0.009999999999999995],
3071
+ rotationY: 0.7853981633974483,
3072
+ },
3073
+ 'board 3; contained rotation 45 degrees; grid 0.05',
3074
+ ],
3075
+ [
3076
+ [-0.4749999999999999, 1.8399999999999999, 0],
3077
+ [0.16, 0.25, 0.12],
3078
+ 0,
3079
+ 1,
3080
+ 0,
3081
+ [-0.4749999999999999, 0],
3082
+ { position: [-0.4749999999999999, 1.8399999999999999, 0], rotationY: 0 },
3083
+ 'board 3; near left edge, 5 mm clearance; grid 0',
3084
+ ],
3085
+ [
3086
+ [0, 1.8399999999999999, -0.134],
3087
+ [0.16, 0.25, 0.12],
3088
+ 0,
3089
+ 1,
3090
+ 0,
3091
+ [0, -0.134],
3092
+ { position: [0, 1.8399999999999999, -0.134], rotationY: 0 },
3093
+ 'board 3; near back edge, 5 mm clearance; grid 0',
3094
+ ],
3095
+ [
3096
+ [0.4749999999999999, 1.8399999999999999, 0],
3097
+ [0.16, 0.25, 0.12],
3098
+ 0,
3099
+ 1,
3100
+ 0,
3101
+ [0.4749999999999999, 0],
3102
+ { position: [0.4749999999999999, 1.8399999999999999, 0], rotationY: 0 },
3103
+ 'board 3; near right edge, 5 mm clearance; grid 0',
3104
+ ],
3105
+ [
3106
+ [0, 1.8399999999999999, 0.134],
3107
+ [0.16, 0.25, 0.12],
3108
+ 0,
3109
+ 1,
3110
+ 0,
3111
+ [0, 0.134],
3112
+ { position: [0, 1.8399999999999999, 0.134], rotationY: 0 },
3113
+ 'board 3; near front edge, 5 mm clearance; grid 0',
3114
+ ],
3115
+ [
3116
+ [0, 1.8399999999999999, 0],
3117
+ [1.1199999999999999, 0.2, 0.398],
3118
+ 0,
3119
+ 1,
3120
+ 0,
3121
+ [0, 0],
3122
+ { position: [0, 1.8399999999999999, 0], rotationY: 0 },
3123
+ 'board 3; exact board, centred and unrotated; grid 0',
3124
+ ],
3125
+ ],
3126
+ },
3127
+ ];