Commit Graph

9 Commits

Author SHA1 Message Date
Finn Tews
60edfe11d2 edited readme 2026-04-27 23:07:01 +02:00
Finn Tews
0598c25e42 edited readme 2026-04-27 23:06:39 +02:00
Finn Tews
e033ce35fa Several quality improvements including top and bottom bus bar, seperate downloads for bus bars and a sharable configuration link
Co-authored-by: Copilot <copilot@github.com>
2026-04-27 23:04:13 +02:00
Maxim
0cd23b8198 Add GNU Affero General Public License v3
Added the GNU Affero General Public License version 3 to the project.
2026-04-27 16:10:43 +02:00
Maxim
9f097cc1da README: add live URL 2026-04-22 23:39:00 +02:00
Maxim
6996efcf23 Sidebar tabs UI, S×P pack sizing, per-busbar STEP or DXF export
Replace the single stacked config pane with a top tab strip (Pack, Cells, BMS,
Busbars) so only one group is visible at a time. Pack sizing defaults to
Series × Parallel with a summary chip that shows count and footprint, with a
mm-size mode for users who prefer direct dimensions. Cells and Housing are
merged under one tab separated by a divider.

Exports are now per component: the cellholder is a STEP solid, and each busbar
downloads as either STEP (3D stencil) or DXF (flat laser cut pattern) chosen by
a dropdown. Mirrored and rotated duplicates are deduplicated by a
pairwise-distance signature so only one copy per shape class is emitted.

The DXF writer produces just the union outline: pads as CIRCLE or ARC entities
restricted to uncovered angular ranges, capsule sides as LINE entities clipped
(Liang-Barsky + disc intersection) against every other primitive so no lines
remain inside the busbar body.

README documents setup, features, and project layout.
2026-04-22 23:35:12 +02:00
Maxim
5e010bd2b6 Fillet concave V-notches in busbar preview
At every vertex (cell or waypoint) where two capsule segments meet, the union of the
rectangles and pad discs left a sharp inward V on the concave side. Canvas lineJoin
only smooths the convex side, so added an explicit tangent-arc region per concave
corner: intersect the inner offset lines to find the notch tip, place the arc center
on the angle bisector at radius padRadius, and fill the curved-triangle bounded by
the two tangent points and the arc. The added subpath unions into the existing fill.
2026-04-22 18:40:48 +02:00
Maxim
15388f681a Redraw busbar overlay during pan and zoom
Pan/zoom handlers redraw the cell holder canvas but skipped the busbar overlay, which was only drawn from updatePreview(). Cache the last draw args and expose redrawBusbarOverlay() so the overlay stays visible during wheel, drag, and touch interactions.
2026-04-22 17:16:43 +02:00
Maxim
ea030930cc Initial commit: cell holder generator + busbar builder
- 3D printable cell holder with STEP export (grid/honeycomb/vertical layouts)
- Configurable BMS holes (half circles, full circles, edge tabs)
- Busbar builder: click cells to define busbars, auto-routed with bend fallback
- Compound STEP export bundles holder + busbars
- OpenCascade.js (wasm) vendored for 3D modeling
2026-04-22 16:16:46 +02:00