Files Branches

Comparing master ← lod-levels

Changes on lod-levels that are not yet on master (three-dot, from the merge base).

11 files changed, 221 insertions(+)
README.md+17
@@ -35,3 +35,20 @@ annular ring). The hole is intentionally undersized; this is correct, not a clea - Dimensions originate in [`adom-inc/adom-tsci-library`](https://github.com/adom-inc/adom-tsci-library) (`lib/src/globals.ts`), published as `@tsci/adom-inc.library` v1.2.1. That repository and the KiCad one above are private, so both links need org access. - Public KiCad PCM feed, installable without a login: **[Adom KiCad Library](https://wiki.adom.inc/adom/adom-kicad-library)**, at `https://wiki.adom.inc/adom/adom-kicad-library/pcm/repository.json` - All Adom machine pins in one Fusion library: **[Adom Machine Pins - Fusion Library](https://wiki.adom.inc/adom/adom-machine-pins-fusion-lbr)**.++## Levels of detail++Four levels of detail of the pin **alone**, for robot-arm, scaffold and probing simulators. A viewer loads super-low first and switches to more detail as you zoom in. They are made from the Fusion export in [`lod/source/`](lod/source/) (`MachinePin_Large_Standard_Gold.glb`), not from the demo-scene GLB at the repo root ([#2](https://wiki.adom.inc/adom/machinepinlargestandard/issues/2)).++- **Frame:** metres, Z along the pin axis at the Fusion datum. The millimetre data sits under one root node scaled 0.001.+- **High:** the Fusion geometry, unchanged (within 1 µm).+- **Medium and low:** simplified with meshoptimizer.+- **Super-low:** stacked 12-gon prisms that follow the pin's radius along its axis.+- **Status:** candidate. Each level has been checked as a cached image. None has been tested yet in a viewer that streams levels.++| | High | Medium | Low | Super-low |+|---|---|---|---|---|+| Triangles | 2,078 | 1,704 | 634 | 220 |+| Draw calls | 2 | 2 | 2 | 1 |++::adom-component-lod{src="/adom/machinepinlargestandard/render/lod/MachinePin_Large_Standard_Gold/manifest.json"}
lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-high.glbadded
⋯ 1 unchanged line ⋯
lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-high.pngadded
⋯ 1 unchanged line ⋯
lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-low.glbadded
⋯ 1 unchanged line ⋯
lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-low.pngadded
⋯ 1 unchanged line ⋯
lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-medium.glbadded
⋯ 1 unchanged line ⋯
lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-medium.pngadded
⋯ 1 unchanged line ⋯
lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-super-low.glbadded
⋯ 1 unchanged line ⋯
lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-super-low.pngadded
⋯ 1 unchanged line ⋯
lod/MachinePin_Large_Standard_Gold/manifest.jsonadded+204
@@ -0,0 +1,204 @@+{+ "schema": "adom/component-lod@1",+ "mpn": "Machine Pin Large Standard (pin-only) MachinePin_Large_Standard_Gold",+ "units": "metres",+ "upAxis": "Z",+ "frame": "MachinePin_Large_Standard_Gold source frame, Z-up; source vertices under root node 'machinepinlargestandard-MachinePin_Large_Standard_Gold-lod-root' scaled 0.001",+ "sourceToLevelScale": 0.001,+ "status": "candidate",+ "source": {+  "path": "lod/source/MachinePin_Large_Standard_Gold.glb",+  "sha256": "57ad97b57ae7591ea40dceb29e51ea80e37ac0481e1436d9e8e6dd937b33e98a",+  "sizeBytes": 123628,+  "triangles": 2078+ },+ "generator": "lod-tools/build.mjs (@gltf-transform 4, meshoptimizer); previews lod-tools/render.py",+ "levels": [+  {+   "level": "high",+   "path": "lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-high.glb",+   "sha256": "30f6572de985ce13f9af2abd222c0de611991c19ba7d3aaca01c0afa7d6d7743",+   "sizeBytes": 66864,+   "decodedBufferBytes": 64788,+   "triangles": 2078,+   "primitives": 2,+   "drawCalls": 2,+   "materials": 2,+   "bounds": {+    "min": [+     -0.0024,+     -0.0023825,+     -0.01315+    ],+    "max": [+     0.0024,+     0.0023825,+     0.0084+    ]+   },+   "boundsMm": [+    -2.4,+    -2.383,+    -13.15,+    2.4,+    2.383,+    8.4+   ],+   "markingIncluded": false,+   "helperNodes": [],+   "extensions": [],+   "derivation": "source mesh, primitives joined per material (flatten, join, weld, dedup); geometry unchanged",+   "review": "candidate: cached preview inspected; not qualified in a streaming LOD viewer",+   "preview": {+    "path": "lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-high.png",+    "sha256": "12ddedfcd4ef4191d32152d52a6062f276ed64018e954e4da91136adc5fd2fd4",+    "sizeBytes": 7557,+    "width": 400,+    "height": 300,+    "view": "iso front-left-up, framed on high (lod-tools/render.py)",+    "sourceLevelSha256": "30f6572de985ce13f9af2abd222c0de611991c19ba7d3aaca01c0afa7d6d7743"+   }+  },+  {+   "level": "medium",+   "path": "lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-medium.glb",+   "sha256": "15049b44f1f940e06e1d96dbb1faf3f8c8cfe042bfc17aa0029be68d093d9775",+   "sizeBytes": 50768,+   "decodedBufferBytes": 48696,+   "triangles": 1704,+   "primitives": 2,+   "drawCalls": 2,+   "materials": 2,+   "bounds": {+    "min": [+     -0.0024,+     -0.0023825,+     -0.01315+    ],+    "max": [+     0.0024,+     0.0023825,+     0.0084+    ]+   },+   "boundsMm": [+    -2.4,+    -2.383,+    -13.15,+    2.4,+    2.383,+    8.4+   ],+   "markingIncluded": false,+   "helperNodes": [],+   "extensions": [],+   "derivation": "meshopt simplify of high, ratio target 0.35, error 0.0008 of mesh extent",+   "review": "candidate: cached preview inspected; not qualified in a streaming LOD viewer",+   "preview": {+    "path": "lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-medium.png",+    "sha256": "2e5863d1aae70894890ae7f695136a04791f59e34714876c036bb7632569f14c",+    "sizeBytes": 7553,+    "width": 400,+    "height": 300,+    "view": "iso front-left-up, framed on high (lod-tools/render.py)",+    "sourceLevelSha256": "15049b44f1f940e06e1d96dbb1faf3f8c8cfe042bfc17aa0029be68d093d9775"+   }+  },+  {+   "level": "low",+   "path": "lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-low.glb",+   "sha256": "b887867aa10c3919550d1bf4ff834aed809dc720d69498557057f4434b2fe3b3",+   "sizeBytes": 26008,+   "decodedBufferBytes": 23940,+   "triangles": 634,+   "primitives": 2,+   "drawCalls": 2,+   "materials": 2,+   "bounds": {+    "min": [+     -0.0023303,+     -0.0023825,+     -0.01315+    ],+    "max": [+     0.0024,+     0.0023825,+     0.0084+    ]+   },+   "boundsMm": [+    -2.33,+    -2.383,+    -13.15,+    2.4,+    2.383,+    8.4+   ],+   "markingIncluded": false,+   "helperNodes": [],+   "extensions": [],+   "derivation": "meshopt simplify of high, ratio target 0.10, error 0.006 of mesh extent",+   "review": "candidate: cached preview inspected; not qualified in a streaming LOD viewer",+   "preview": {+    "path": "lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-low.png",+    "sha256": "921a7be6ad581b10a84962eb79bf1e6e18ec20210305192bd30e0621c5fe560a",+    "sizeBytes": 9486,+    "width": 400,+    "height": 300,+    "view": "iso front-left-up, framed on high (lod-tools/render.py)",+    "sourceLevelSha256": "b887867aa10c3919550d1bf4ff834aed809dc720d69498557057f4434b2fe3b3"+   }+  },+  {+   "level": "super-low",+   "path": "lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-super-low.glb",+   "sha256": "6da3de795f6aeea64998654fd47d2e6bedfccc12d953788d4a93f785d87d6576",+   "sizeBytes": 18764,+   "decodedBufferBytes": 17520,+   "triangles": 220,+   "primitives": 1,+   "drawCalls": 1,+   "materials": 1,+   "bounds": {+    "min": [+     -0.0024,+     -0.0024,+     -0.01315+    ],+    "max": [+     0.0024,+     0.0024,+     0.0084+    ]+   },+   "boundsMm": [+    -2.4,+    -2.4,+    -13.15,+    2.4,+    2.4,+    8.4+   ],+   "markingIncluded": false,+   "helperNodes": [],+   "extensions": [],+   "derivation": "lathe profile: stacked 12-gon prisms following the radius along Z, one primitive, top-surface colour (5 stacked 12-gon prisms)",+   "review": "candidate: cached preview inspected; not qualified in a streaming LOD viewer",+   "preview": {+    "path": "lod/MachinePin_Large_Standard_Gold/machinepinlargestandard-MachinePin_Large_Standard_Gold-super-low.png",+    "sha256": "8b04f646698064804352251d8ab703231f27fdbcd4541fb5ac100412f3f4c924",+    "sizeBytes": 5931,+    "width": 400,+    "height": 300,+    "view": "iso front-left-up, framed on high (lod-tools/render.py)",+    "sourceLevelSha256": "6da3de795f6aeea64998654fd47d2e6bedfccc12d953788d4a93f785d87d6576"+   }+  }+ ],+ "hints": [+  "All levels share the source frame; place them exactly as the source GLB.",+  "Drop node 'machinepinlargestandard-MachinePin_Large_Standard_Gold-lod-root' (scale 0.001) to get the source units back.",+  "Super-low is one primitive: load it first, promote on screen size.",+  "Pin-only: the Fusion export MachinePin_Large_Standard_Gold_v4.glb (lod/source/, Adom hub, Main / Machine Pins), not the page's demo-board GLB. Z is the pin axis at the part's own Fusion datum; millimetre source under root scale 0.001."+ ]+}\ No newline at end of file
lod/source/MachinePin_Large_Standard_Gold.glbadded
⋯ 1 unchanged line ⋯