← Commit history

Add dashed copper, silk and pin-map inspection layers to component hero

John Lauer ·94cdd3e0f1 ·1mo ago ·parent 74f895f
6 files changed +136−2
README.md+5
@@ -26,3 +26,8 @@ Ships the KiCad symbol, footprint, STEP + GLB 3D model, and the canonical **adom The main 3D viewer uses [cl05b104ko5nnnc-hero-mpn.glb](cl05b104ko5nnnc-hero-mpn.glb), derived from the reviewed [cl05b104ko5nnnc-mpn.glb](cl05b104ko5nnnc-mpn.glb). The exact MPN is AI-added identification artwork, not a factory marking. [Marking inputs, fit and licensing](MPN-MARKING.md) and [source provenance](PROVENANCE.md) remain applicable.  The hero applies only a 180-degree Z display rotation; no geometry is scaled. Use the original-frame marked STEP/GLB downloads for board assemblies. The rendered package and readable mark were reviewed; that does not establish manufacturer-exact dimensions, polarity, or native-tool qualification. [Binding and file hashes](hero-binding.json).+++## Footprint-aware inspection hero++The current hero adds separate nonphysical reference layers: teal dashed copper boundaries at50% opacity, silkscreen at30% opacity and actual symbol pin names (unique pad numbers when unnamed) at50% opacity. Orbit underneath to compare physical terminals, copper and pin1 marks. Copper outlines are not soldermask/paste. Existing MPN, materials, animations and lights are preserved. These helpers are excluded from board-use STEP/GLB files. [Geometry, mapping and source hashes](cl05b104ko5nnnc-hero-footprint.overlay.json); [pin-map input](hero-pin-map.json). Physical body can occlude seating-plane artwork; inspect the underside or isolate it. Generated display-font contours are not native fab artwork.
cl05b104ko5nnnc-hero-footprint.glbadded
⋯ 1 unchanged line ⋯
cl05b104ko5nnnc-hero-footprint.overlay.jsonadded+86
@@ -0,0 +1,86 @@+{+  "source_glb_sha256": "cf48d9fcdfaf78b2d2416bef0334758ea43c0db78d7bb327af7a359113cecd2f",+  "footprint_sha256": "158fdbd1b477316056aec8019ffffa0f53d9d5f0efaf8d773636115648a603e6",+  "derivative_sha256": "1b9260e9cb57d1d63482db228dd67697fe57507e3c7b1bb5ffd28a6e04fa4a8e",+  "manufacturer_geometry_buffer_prefix_unchanged": true,+  "units": "metre",+  "upAxis": "Z",+  "plane_z_mm": -0.02,+  "pad_outline": "copper perimeter, not solder mask or paste",+  "dash_mm": 0.07,+  "gap_mm": 0.045,+  "silkscreen_opacity": 0.3,+  "pad_outline_opacity": 0.5,+  "pad_outline_color": "teal #00E6DC",+  "uninstantiated_reference_placeholder": "omitted from component display",+  "pad_name_opacity": 0.5,+  "pad_names": "signal names resolved through canonical pin-to-pad mapping; active-low overbars preserved",+  "library_sha256": "21a6e156f02f88c599f086bdfcb767085767ac78e81191cb7d84a78b89e0cc4b",+  "pads": [+    {+      "number": "1",+      "signal_name": "~",+      "display_name": "1",+      "pad_number_fallback": true,+      "active_low_overbar": false,+      "center_mm": [+        -0.48,+        -0.0+      ],+      "copper_size_mm": [+        0.56,+        0.62+      ],+      "copper_outline_bounds_mm": [+        [+          -0.76,+          -0.31+        ],+        [+          -0.19999999999999996,+          0.31+        ]+      ],+      "label_position_mm": [+        -1.1328483072916666,+        -0.0+      ]+    },+    {+      "number": "2",+      "signal_name": "~",+      "display_name": "2",+      "pad_number_fallback": true,+      "active_low_overbar": false,+      "center_mm": [+        0.48,+        -0.0+      ],+      "copper_size_mm": [+        0.56,+        0.62+      ],+      "copper_outline_bounds_mm": [+        [+          0.19999999999999996,+          -0.31+        ],+        [+          0.76,+          0.31+        ]+      ],+      "label_position_mm": [+        1.1314095052083335,+        -0.0+      ]+    }+  ],+  "overlay_nodes": 3,+  "limitations": [+    "Nonphysical reference lines, not a manufacturing layer or manufacturer STEP geometry.",+    "Silkscreen text follows source text/placement but uses the supplied display font.",+    "Physical body can occlude artwork on the seating plane; inspect underside or hide the body."+  ],+  "scope": "Nonphysical component wiki hero only; do not use as board component model."+}\ No newline at end of file
hero-pin-map.jsonadded+27
@@ -0,0 +1,27 @@+{+  "symbol": {+    "pins": [+      {+        "number": "1",+        "name": "~",+        "electrical_type": "passive"+      },+      {+        "number": "2",+        "name": "~",+        "electrical_type": "passive"+      }+    ]+  },+  "connect": [+    {+      "pin": "1",+      "pad": "1"+    },+    {+      "pin": "2",+      "pad": "2"+    }+  ],+  "provenance": "Explicit KiCad symbol pin-number/name mapping; unmatched footprint number remains number, never a project net."+}\ No newline at end of file
package.json+9−1
@@ -25,7 +25,7 @@     "parts": {       "symbol": "CL05B104KO5NNNC.kicad_sym",       "footprint": "CL05B104KO5NNNC.kicad_mod",-      "model_3d": "cl05b104ko5nnnc-hero-mpn.glb",+      "model_3d": "cl05b104ko5nnnc-hero-footprint.glb",       "step": "cl05b104ko5nnnc-mpn.step"     },     "viewer_3d": {@@ -33,6 +33,14 @@       "animate": false,       "shadows": false,       "tooltips": "authored"+    },+    "reference_artwork": {+      "contract": "eda-component-hero",+      "footprint": "CL05B104KO5NNNC.kicad_mod",+      "pinMap": "hero-pin-map.json",+      "evidence": "cl05b104ko5nnnc-hero-footprint.overlay.json",+      "nonphysical": true,+      "boardUse": false     }   },   "hero": {
page.json+9−1
@@ -41,7 +41,7 @@     "parts": {       "symbol": "CL05B104KO5NNNC.kicad_sym",       "footprint": "CL05B104KO5NNNC.kicad_mod",-      "model_3d": "cl05b104ko5nnnc-hero-mpn.glb",+      "model_3d": "cl05b104ko5nnnc-hero-footprint.glb",       "step": "cl05b104ko5nnnc-mpn.step"     },     "viewer_3d": {@@ -49,6 +49,14 @@       "animate": false,       "shadows": false,       "tooltips": "authored"+    },+    "reference_artwork": {+      "contract": "eda-component-hero",+      "footprint": "CL05B104KO5NNNC.kicad_mod",+      "pinMap": "hero-pin-map.json",+      "evidence": "cl05b104ko5nnnc-hero-footprint.overlay.json",+      "nonphysical": true,+      "boardUse": false     }   },   "discovery_triggers": [