main
John Lauer Name the board CAD by part number: package-reference.step -> GRM155R71C104KA88D.step, footprint -> C_0402_1005Metric_GR… dc690cb 13h ago
{
 "schema": "adom/component-lod@1",
 "mpn": "GRM155R71C104KA88D",
 "upAxis": "Z",
 "units": "metres",
 "status": "candidate (AI-checked, not human-reviewed)",
 "purpose": "clean board-use component models: no footprint pads, outlines, labels or silkscreen; no marking (none per datasheet)",
 "source": {
  "path": "GRM155R71C104KA88D.step",
  "sha256": "03e44c4b2b727b8d4b6b1fd598cbd12dd5e614f1dfeefa96a92a07e3a3b312a2"
 },
 "sourceToDisplay": "uniform scale 0.001 (mm to m); no rotation, no translation; origin = footprint origin, seat z = 0",
 "generator": "lod.py (capencoder passives, OCCT via cadquery-ocp)",
 "removedHelpers": [],
 "levels": [
  {
   "level": "high",
   "path": "lod/high.glb",
   "sha256": "a7e8a07d37de23790b3dd08efac5905f79da1988d9566b954faefd5aeec2ef48",
   "sizeBytes": 68412,
   "decodedBufferBytes": 66504,
   "triangles": 1580,
   "primitives": 2,
   "bounds": {
    "min": [
     -0.0005,
     -0.00025,
     0.0
    ],
    "max": [
     0.0005,
     0.00025,
     0.0005
    ]
   },
   "approximation": {
    "method": "OCCT BRepMesh_IncrementalMesh",
    "linearDeflectionMm": 0.0005,
    "angularDeflectionRad": 0.1
   },
   "detailVisibility": {
    "virtualMpn": false,
    "note": "no marking: the datasheet specifies none"
   },
   "review": "Candidate: rendered preview checked by AI (silhouette, terminals, seat z=0); not human-reviewed",
   "preview": {
    "path": "lod/high.png",
    "sha256": "5a82b4e7293806d37477e6ded56b7c038ead8ba9bcd20e913707190ed7e52a81",
    "sizeBytes": 8646,
    "width": 400,
    "height": 300,
    "view": "iso",
    "sourceLevelSha256": "a7e8a07d37de23790b3dd08efac5905f79da1988d9566b954faefd5aeec2ef48"
   }
  },
  {
   "level": "medium",
   "path": "lod/medium.glb",
   "sha256": "86e4496ffdb2b92cba71a763ba1872c921b44c13622f8d944f2b24b7942d27bf",
   "sizeBytes": 22040,
   "decodedBufferBytes": 20136,
   "triangles": 476,
   "primitives": 2,
   "bounds": {
    "min": [
     -0.0005,
     -0.00025,
     0.0
    ],
    "max": [
     0.0005,
     0.00025,
     0.0005
    ]
   },
   "approximation": {
    "method": "OCCT BRepMesh_IncrementalMesh",
    "linearDeflectionMm": 0.004,
    "angularDeflectionRad": 0.35
   },
   "detailVisibility": {
    "virtualMpn": false,
    "note": "no marking: the datasheet specifies none"
   },
   "review": "Candidate: rendered preview checked by AI (silhouette, terminals, seat z=0); not human-reviewed",
   "preview": {
    "path": "lod/medium.png",
    "sha256": "94fb3d11951575a3e400b4c374cc637fb360a053e5f31ac8e9256923bc9417ef",
    "sizeBytes": 8520,
    "width": 400,
    "height": 300,
    "view": "iso",
    "sourceLevelSha256": "86e4496ffdb2b92cba71a763ba1872c921b44c13622f8d944f2b24b7942d27bf"
   }
  },
  {
   "level": "low",
   "path": "lod/low.glb",
   "sha256": "56fabcdda9e3d8f1cfc98198405c088afac7e92c641ec61c40580ab927fea4a3",
   "sizeBytes": 11952,
   "decodedBufferBytes": 10056,
   "triangles": 236,
   "primitives": 2,
   "bounds": {
    "min": [
     -0.0005,
     -0.00025,
     0.0
    ],
    "max": [
     0.0005,
     0.00025,
     0.0005
    ]
   },
   "approximation": {
    "method": "OCCT BRepMesh_IncrementalMesh",
    "linearDeflectionMm": 0.02,
    "angularDeflectionRad": 0.9
   },
   "detailVisibility": {
    "virtualMpn": false,
    "note": "no marking: the datasheet specifies none"
   },
   "review": "Candidate: rendered preview checked by AI (silhouette, terminals, seat z=0); not human-reviewed",
   "preview": {
    "path": "lod/low.png",
    "sha256": "f6faafada8e41927fd1d00c97d5037be6faf3aec88bb750339014e5ef6c87492",
    "sizeBytes": 8597,
    "width": 400,
    "height": 300,
    "view": "iso",
    "sourceLevelSha256": "56fabcdda9e3d8f1cfc98198405c088afac7e92c641ec61c40580ab927fea4a3"
   }
  },
  {
   "level": "super-low",
   "path": "lod/super-low.glb",
   "sha256": "ab9a9bb7ac6b45fcced1fafd77ed9fc22e0101dd46500c5bfd7a31ccdf677e11",
   "sizeBytes": 3828,
   "decodedBufferBytes": 1944,
   "triangles": 36,
   "primitives": 2,
   "bounds": {
    "min": [
     -0.0005,
     -0.00025,
     0.0
    ],
    "max": [
     0.0005,
     0.00025,
     0.0005
    ]
   },
   "approximation": {
    "method": "per-material bounding boxes split at the part centre (terminals, body, overcoat)"
   },
   "detailVisibility": {
    "virtualMpn": false,
    "note": "no marking: the datasheet specifies none"
   },
   "review": "Candidate: rendered preview checked by AI (silhouette, terminals, seat z=0); not human-reviewed",
   "preview": {
    "path": "lod/super-low.png",
    "sha256": "e9c1f448878cdfb09bb08dd62222cb224dab0177841ff7f459af55a1eca73eb3",
    "sizeBytes": 7245,
    "width": 400,
    "height": 300,
    "view": "iso",
    "sourceLevelSha256": "ab9a9bb7ac6b45fcced1fafd77ed9fc22e0101dd46500c5bfd7a31ccdf677e11"
   }
  }
 ],
 "hints": [
  "All four levels share pose and units; super-low is boxes per material group, chosen for board overviews."
 ]
}