← Commit history

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

John Lauer ·f614b0f9c5 ·18d ago ·parent 4458312
6 files changed +174−2
README.md+5
@@ -36,3 +36,8 @@ The footprint is extracted from the actual final board with board position, nets The main 3D viewer uses [zxtr2012z-7-hero-mpn.glb](zxtr2012z-7-hero-mpn.glb), derived from the reviewed [zxtr2012z-7-mpn.glb](zxtr2012z-7-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](zxtr2012z-7-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.
hero-pin-map.jsonadded+36
@@ -0,0 +1,36 @@+{+  "symbol": {+    "pins": [+      {+        "number": "1",+        "name": "GND",+        "electrical_type": "power_in"+      },+      {+        "number": "2",+        "name": "VIN",+        "electrical_type": "power_in"+      },+      {+        "number": "3",+        "name": "VOUT",+        "electrical_type": "power_out"+      }+    ]+  },+  "connect": [+    {+      "pin": "1",+      "pad": "1"+    },+    {+      "pin": "2",+      "pad": "2"+    },+    {+      "pin": "3",+      "pad": "3"+    }+  ],+  "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
@@ -27,7 +27,7 @@       "footprint": "zxtr2012z-7.kicad_mod",       "symbol": "zxtr2012z-7.kicad_sym",       "step": "zxtr2012z-7-mpn.step",-      "model_3d": "zxtr2012z-7-hero-mpn.glb"+      "model_3d": "zxtr2012z-7-hero-footprint.glb"     },     "distributor_links": {       "lcsc": "C460296"@@ -37,6 +37,14 @@       "animate": false,       "shadows": false,       "tooltips": "authored"+    },+    "reference_artwork": {+      "contract": "eda-component-hero",+      "footprint": "zxtr2012z-7.kicad_mod",+      "pinMap": "hero-pin-map.json",+      "evidence": "zxtr2012z-7-hero-footprint.overlay.json",+      "nonphysical": true,+      "boardUse": false     }   },   "discovery_triggers": [
page.json+9−1
@@ -27,7 +27,7 @@       "footprint": "zxtr2012z-7.kicad_mod",       "symbol": "zxtr2012z-7.kicad_sym",       "step": "zxtr2012z-7-mpn.step",-      "model_3d": "zxtr2012z-7-hero-mpn.glb"+      "model_3d": "zxtr2012z-7-hero-footprint.glb"     },     "distributor_links": {       "lcsc": "C460296"@@ -37,6 +37,14 @@       "animate": false,       "shadows": false,       "tooltips": "authored"+    },+    "reference_artwork": {+      "contract": "eda-component-hero",+      "footprint": "zxtr2012z-7.kicad_mod",+      "pinMap": "hero-pin-map.json",+      "evidence": "zxtr2012z-7-hero-footprint.overlay.json",+      "nonphysical": true,+      "boardUse": false     }   },   "discovery_triggers": [
zxtr2012z-7-hero-footprint.glbadded
⋯ 1 unchanged line ⋯
zxtr2012z-7-hero-footprint.overlay.jsonadded+115
@@ -0,0 +1,115 @@+{+  "source_glb_sha256": "6b5aa695d7ddfe93fd263e57a0360b8bfb2247cc74714cb9a6054279b4cb8f25",+  "footprint_sha256": "8dee5d9934a7b8238b9adad0851c511b577934d4934391416c978a65fe78afa1",+  "derivative_sha256": "c1d64b04b8aa4193787fde44030a31f9ae9fa52e1c96102bb0b8099de547e717",+  "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": "8395a0979329b57947c153b8dd2638c8f6fe15dc27f6339900f1288c290d3ba9",+  "pads": [+    {+      "number": "1",+      "signal_name": "GND",+      "display_name": "GND",+      "pad_number_fallback": false,+      "active_low_overbar": false,+      "center_mm": [+        -1.95,+        1.5+      ],+      "copper_size_mm": [+        1.3,+        0.9+      ],+      "copper_outline_bounds_mm": [+        [+          -2.6,+          1.05+        ],+        [+          -1.2999999999999998,+          1.95+        ]+      ],+      "label_position_mm": [+        -3.1106412760416666,+        1.5+      ]+    },+    {+      "number": "2",+      "signal_name": "VIN",+      "display_name": "VIN",+      "pad_number_fallback": false,+      "active_low_overbar": false,+      "center_mm": [+        -1.862499,+        -0.0+      ],+      "copper_size_mm": [+        1.475,+        0.9+      ],+      "copper_outline_bounds_mm": [+        [+          -2.599999,+          -0.8665+        ],+        [+          2.000001,+          0.8665+        ]+      ],+      "label_position_mm": [+        -3.1093121510416664,+        -0.0+      ]+    },+    {+      "number": "3",+      "signal_name": "VOUT",+      "display_name": "VOUT",+      "pad_number_fallback": false,+      "active_low_overbar": false,+      "center_mm": [+        -1.95,+        -1.5+      ],+      "copper_size_mm": [+        1.3,+        0.9+      ],+      "copper_outline_bounds_mm": [+        [+          -2.6,+          -1.95+        ],+        [+          -1.2999999999999998,+          -1.05+        ]+      ],+      "label_position_mm": [+        -3.187727864583333,+        -1.5+      ]+    }+  ],+  "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