Commit Graph

938 Commits

Author SHA1 Message Date
Bane Stojkovic aef300d902 Traces, curved traces, ground fills, solder pads and PCB text call their layer 'Board Side', like every other part, and count as Board Side components in code; the saved field is still 'layer' 2026-11-11 21:15:26 +01:00
Bane Stojkovic 34d475b18a Merge branch 'master' into copper-improvements
# Conflicts:
#	diylc/diylc-core/src/main/resources/update.xml
2026-11-11 18:39:47 +01:00
Bane Stojkovic 0d7e60b5a4 Opening an older file with a board no longer warns about an unknown 'drawCoordinates' property 2026-11-11 18:33:20 +01:00
Bane Stojkovic 13b31e6dd5 Review fixes: a drag in the Underside Display picks the part a click would, the part being placed there is drawn like the parts already there, a bottom Dot no longer adds an empty silkscreen page; one helper decides a part's board side and copper layers share an interface 2026-11-11 17:32:46 +01:00
Bane Stojkovic 5ef6952ef4 The AI component catalog no longer offers the deprecated inner layers, and lists the new 'Board Side' property 2026-11-11 17:05:44 +01:00
Bane Stojkovic 7f8c790936 A 'Dot' used as a solder joint can be put on the bottom of the board with the 'Board Side' property 2026-11-11 16:57:35 +01:00
Bane Stojkovic eeca9f112d New parts can be placed in a board's Underside Display; a part placed there goes on the bottom of the board 2026-11-11 15:46:29 +01:00
Bane Stojkovic 246763419c All PCB parts with a top silkscreen, including tube sockets, rotary switches, relays and transformers, have the 'Board Side' property 2026-11-11 15:34:40 +01:00
Bane Stojkovic df873df04a Resistors, capacitors, diodes, ICs, transistors and other PCB parts can be placed on the bottom of the board with the new 'Board Side' property; Gerber export puts their silkscreen on the bottom layer with the text mirrored 2026-11-11 15:15:19 +01:00
Bane Stojkovic 16f54fa479 'Solder Pad' on the top layer put its solder mask opening on the bottom layer in Gerber export 2026-11-11 15:15:10 +01:00
Bane Stojkovic f73574641c phase 1 2026-11-10 22:50:16 +01:00
Bane Stojkovic 9f6124f719 rojects with a resistor, capacitor or other leaded component whose Width or Length had been cleared in the property editor could not be opened; such values now fall back to the default size, and Width and Length can no longer be left empty 2026-11-10 16:58:23 +01:00
Bane Stojkovic eea7d45cc9 ai notes 2026-11-06 10:51:34 +01:00
Bane Stojkovic 396c150472 datasheet fix 2026-11-06 09:57:02 +01:00
Bane Stojkovic c47ff3a8fc release 2026-11-06 09:42:23 +01:00
Bane Stojkovic bf7fdafef5 blocks and variants import enhancements 2026-11-06 09:39:07 +01:00
Bane Stojkovic 0d2475d4f6 heat sink resistor 2026-11-04 10:38:27 +01:00
Bane Stojkovic 2ae30b9630 fix test config 2026-11-04 10:15:08 +01:00
Bane Stojkovic 12ac7fe809 to-1 flange added 2026-11-03 18:31:11 +01:00
Bane Stojkovic 75d0accc5a more datasheet models 2026-11-03 16:08:12 +01:00
Bane Stojkovic 54179e2d7b regulator coverage gap 2026-11-03 13:44:22 +01:00
Bane Stojkovic 732281f3d7 consolidate pin color and pin rendering 2026-11-03 12:08:33 +01:00
Bane Stojkovic 1a4b40d36c sorting 2026-11-03 11:06:36 +01:00
Bane Stojkovic 55c48c6b24 ux4 sockec 2026-11-02 18:19:34 +01:00
Bane Stojkovic b7fece1edb submini tubes 2026-11-02 17:22:19 +01:00
Bane Stojkovic 3ba4434b66 tube improvements 2026-11-02 15:51:26 +01:00
Bane Stojkovic e369ea6200 diode improvements 2026-11-02 14:58:52 +01:00
Bane Stojkovic 3e043a8387 tube improvements 2026-11-02 14:40:23 +01:00
Bane Stojkovic ab16636860 transistor improvements 2026-11-02 13:01:11 +01:00
Bane Stojkovic a678b52f4d chassis 2026-11-02 10:16:05 +01:00
Bane Stojkovic 47f9056588 default shape border to 1px 2026-11-02 10:12:41 +01:00
Bane Stojkovic c5a462a385 chassis improvements 2026-11-02 10:08:00 +01:00
Bane Stojkovic 23ecf9e8d7 more models 2026-11-01 20:39:57 +01:00
Bane Stojkovic 4688879d0e IC improvements 2026-11-01 17:08:20 +01:00
Bane Stojkovic 15277452f4 Re-modeled factory variants of Resistor component type as datasheet in order to make them available to the AI; this will produce more accurate AI-driven edits 2026-10-31 20:21:04 +01:00
Bane Stojkovic bc64cdd0be Ai edit (#1099)
* Update update.xml

* Update update.xml

* warning on unknown op

* Update AiEditScriptEditorTest.java

* 'AI Circuit Analyzer' offers to log in instead of just showing the error

* Update update.xml

* include bounds, selection to ai project

* Update update.xml
2026-10-30 09:50:20 +01:00
Bane Stojkovic bc5f203e21 Ai edit (#1065)
* initial

* Updates

* improvements

* split netlist from analysis

* coordinates in grid

* Update IChatbotAPI.java

* cleanup

* cleanup

* various improvements

* Datasheet model support

* Include pinouts in component catalog

* Update update.xml

* regenerate catalog

* Zooming out until the drawing is smaller than the window made the toolbar above the canvas grow taller and squeeze the canvas

* refresh

* edit improvements

* refine wire handling

* CR

* catalog gen improvement

* improvements

* Rotating and mirroring the selection with 'Sticky Points' enabled now keeps the circuit connected

* fix version reading

* set dimensions and mode in any order

* add AINote

* add aiNote

* board notes added

* ai notes

* ai notes

* ai notes

* led minor code improvement and ai note

* single coil fix. guitar component notes

* add support for replace operation

* Update pom.xml

* switch notes

* ai notes for pickups

* stingray

* reconnect operation support

* ai edit code refactor

* Cliff jack node name fixes

* ai notes

* ai notes

* ai notes

* netlist improvement

* simplify

* solder lug improvements

* tag strip enhancement

* regression fixes

* ai notes

* battery snap improvement

* more sample questions

* 'IEC Socket', 'Plastic DC Jack', 'Multi-Section Capacitor' and 'Mini Relay' terminals are now labeled by function

* node improvement

* Regression data consolidation

---------

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-10-30 09:32:03 +01:00
Cem Yuksel 0514ea2262 Add 6PDT and 6PDT On/Off/On mini toggle switches (#1094) 2026-10-27 16:49:06 +01:00
Cem Yuksel 6d4820e2c4 Fix selected position labels when editing on/off/on type switches (#1091) 2026-10-27 16:39:22 +01:00
Bane Stojkovic e16b6ca36d gerber upgrade 2026-10-17 22:25:59 +02:00
Bane Stojkovic 8ec6900597 Localization fix 2026-10-17 15:45:39 +02:00
Bane Stojkovic 9a2303652a renamed misspelled property and type 2026-10-15 20:05:41 +02:00
Bane Stojkovic eaeae00211 Added Rectangular shape to LED component in addition to Round; added ability to set LED lead spacing 2026-10-15 15:45:33 +02:00
Bane Stojkovic a8d8a9b409 Render optimization (#1087)
* Caching and culling improvements

* doc

* Update canvas-rendering-cache-and-culling.md

* caching for wires

* cache invalidation improvements

* caching improvements

* twisted wire performance update

* Improved grid rendering on screen and when exporting; PDF export of the grid is now vector-based and does not get blurry on zooming in

* area append improvement

* bug fix for subtracting trace cuts

* Twisted wire stroke render improvement

* various performance improvements

* lazy area merging

* regression update

* Update update.xml

* code cleanup

* Twisted wire border thickness fix
2026-10-14 21:15:40 +02:00
Bane Stojkovic 42d3d557c6 Reflection (#1085)
* index instead of reflection

* Update update.xml
2026-10-13 21:17:30 +02:00
Bane Stojkovic ef82ffc4a4 Improve clipping logic 2026-10-13 20:57:40 +02:00
Bane Stojkovic 4d02f54e8a Improved rendering performance and reduced lagging with complex projects while dragging components around 2026-10-13 20:06:04 +02:00
Bane Stojkovic 2cab737acf Fixed the issue of disappearing components in some edge cases 2026-10-12 15:58:38 +02:00
Bane Stojkovic 5f09026ddd Include 'Potentiometer (Miniature)' and 'Trimmer Potentiometer' in Guitar Wiring Analyzer 2026-10-12 14:51:45 +02:00
Bane Stojkovic 5a58519edf 'Cut Line' can be rotated using keyboard shortcuts 2026-10-12 12:06:52 +02:00