Experimental: push |J| heatmap overlays into KiCad (dialog opt-in)
Build PCM package / build (push) Successful in 6s
Build PCM package / build (push) Successful in 6s
After a solve, the per-layer current-density maps can be pushed into the open board as reference images on User.9..User.12 (stackup order, top first) - visible right in the editor, toggled like any layer, never plotted to gerbers. Dialog checkbox, default OFF; every push replaces all reference images on those layers. Rendering (fill_resistance/overlay.py, KiCad-free and tested headless): one pixel per grid cell, opaque over copper with the log scale lifted off the colormap's near-black bottom (dark canvas), transparent elsewhere, one pixel of half-alpha edge bleed so the overlay reaches the drawn outline instead of stopping half a cell short. Pushing lives in board_io (ReferenceImage via the IPC API, KiCad >= 10.0.1; scale = width / (pixels * 1 inch / 300 PPI), position = image center); kipy 0.7.1 swallows creation errors, so the per-item status is read from the raw CreateItemsResponse. pipeline.run takes an optional overlay callback; failures are reported, never fatal. tools/kicad_overlay_test.py pushes a fiducial alignment pattern (KiCad bbox readback verified placement to half a pixel); tools/ kicad_heatmap_overlay.py runs the whole thing headless against the open board, filtering marker rectangles of other nets' analyses via the exact copper test. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -75,6 +75,17 @@ SWIG API. Requires KiCad **10.0.1+**.
|
||||
per-via current and dissipation, and the **current through each
|
||||
injection area** — computed flux with the equipotential model,
|
||||
prescribed area share with the uniform model), `geometry_dump.json`.
|
||||
5. **Experimental — overlays inside KiCad** (dialog checkbox, default
|
||||
off; KiCad ≥ 10.0.1): after the solve, the per-layer **|J| heatmaps
|
||||
are pushed into the open board** as unlocked reference images on
|
||||
`User.9`…`User.12` (`OVERLAY_LAYERS`; enable them in Board Setup),
|
||||
copper layers mapped in stackup order, top first. Toggle them in the
|
||||
Appearance panel like any layer; opaque over copper, transparent
|
||||
elsewhere, cold end lifted so it stays visible on the dark canvas.
|
||||
Reference images never plot to gerbers. Every push **replaces all
|
||||
reference images on those layers**, so don't store unrelated images
|
||||
there. Also available headless:
|
||||
`python tools/kicad_heatmap_overlay.py --net X --amps 10`.
|
||||
|
||||
## Model & limits
|
||||
|
||||
|
||||
Reference in New Issue
Block a user