jean-pierre charras
9f38fa43cd
Fix some minor compil and Coverity warnings.
2022-06-05 11:44:49 +02:00
Jeff Young
d14fd5a9da
Fix logic error with silk overlap test.
2022-06-04 19:34:24 +01:00
Jon Evans
3747369aaa
PNS: Remove offsets from hull generation
...
This is likely an old workaround to numerical precision issues
in the DRC system that no longer exist. Removing this is necessary
for "exact" hull generation to produce walkaround results that
look nice (paths falling exactly on the grid lines)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10710
(cherry picked from commit 5d4e2aa595
)
2022-06-04 00:04:03 -04:00
Jon Evans
9a2950cca1
PNS: Use exact hulls for walkaround path generation
...
When we generate hulls, by default we subtract the clearance epsilon
to prevent false collisions in the router that wouldn't be flagged
by DRC. However, we need to use the actual hull with no epsilon
when generating hulls for pathfinding in the walkaround system.
Without this change, it is possible for the walkaround to generate
a valid-seeming path that results in a DRC violation, for example
when dragging a drag against a board edge.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10536
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11365
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10710
(cherry picked from commit 2a91ba35c1
)
2022-06-04 00:04:03 -04:00
Jeff Young
8b75a32cfa
We only want "actual" shapes, not anything derived from SHAPE.
...
Also fixes a bug where GetParentFootprint would get confused by
groups.
Fixes https://gitlab.com/kicad/code/kicad/issues/11741
2022-06-04 00:24:27 +01:00
Jeff Young
d2a9cbe6e8
Use effective width for DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11740
2022-06-03 23:27:10 +01:00
Tomasz Wlostowski
c8b93c39b6
router: remove some old cruft from the WALKAROUND class
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski
0bd7f603a3
router: consider mouse drag event a valid route start/end event
...
L-clicks during routing operation while the mouse is moving (even slightly) were ignored, which was annoying to some users (myself included). Now the router
always fixes the track upon mouse click.
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski
eaee610fd9
router: save project settings together with the debug log
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski
f73acbb206
router: derive VIA class from LINKED_ITEM interface
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski
cab08f859a
router: cluster extraction should only consider objects that are touching (instead of checking clearance)
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski
297c60923e
router: return routing status from ROUTER::Move()
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski
54f4f765b9
router: NODE|ITEM::QueryColliding() now can override clearance
...
Needed for clustering algorithm (to be committed later... ;-)
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski
aca9cce5d5
router: more verbose debug messages for the debugger tool
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski
2a0accd184
router: shove algorithm now considers cases where a small via sits 'inside' a fanout of wide (width > via diameter) segments.
...
The shove algorithm can't move the loose track ends. It always needs a via. In case of wide segments stitched with
a small via, the collision search finds only colliding segments and does not consider the via. This leads to frequent shove falilures
or 'choppy' behaviour when the head line only slightly overlaps with an end of a thick trace. This patch attempts at improving this behaviour
by considering the 'tiny via in wide segment' case explicitly.
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski
08647bf035
router: temporarily disable via hole clearance check in the shove algorithm.
...
- needs refinements and additional checks for corner cases.
- disabled also to facilitate debugging of other shove bugs
2022-06-03 23:28:40 +02:00
Tomasz Wlostowski
8cb65a8a13
router: default values for LOGGER::Log()
2022-06-03 23:28:40 +02:00
Tomasz Wlostowski
752ba2ed76
router: log via toggle events
2022-06-03 23:28:40 +02:00
Tomasz Wlostowski
a4ad47cd08
router: use SHAPEs and PNS::ITEMs only in the ROUTER_PREVIEW_ITEM
2022-06-03 23:28:40 +02:00
Tomasz Wlostowski
b08280d00c
router: enable Hole Clearance rule only in Mark Obstacles mode
...
(it will be brought back to Walk/Shove modes as soon as all the underlying issues are fixed)
2022-06-03 23:28:40 +02:00
Jeff Young
d31bd4ea3e
Use default text properties for textboxes.
...
Also make sure text is mirrored when placed on back of board.
Fixes https://gitlab.com/kicad/code/kicad/issues/11739
2022-06-03 18:48:09 +01:00
qu1ck
13bece06cf
Fix swig wrapper for footprint 3d models
2022-06-03 17:35:40 +00:00
Mike Williams
857990a883
Hierarchy: turn into a left side pane
...
Drop auto-closing option as well.
2022-06-02 21:56:17 +00:00
Jeff Young
bd51b33f65
Clear point editor before recombining pad.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11731
2022-06-02 15:55:35 +01:00
Jeff Young
de12c63de6
Repair point editing of rotated text boxes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11432
2022-06-02 10:42:57 +01:00
Jeff Young
f8829de5ea
Formatting.
2022-06-02 10:42:57 +01:00
Jon Evans
40593930d0
PNS: Fix off-by-one in dragCornerInternal
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10919
(cherry picked from commit 8d8f96b094
)
2022-06-01 21:13:05 +00:00
Jeff Young
dee22a31d9
Expose footprint ID, description and keywords to property system.
2022-06-01 12:47:37 +01:00
Jeff Young
38bc653ce9
Add arc support to HyperLynx export.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10782
2022-06-01 12:47:37 +01:00
Jon Evans
6fd14ac945
[PNS] Fix invalid assumption in IsLineCorner
...
(cherry picked from commit a4aa447b95
)
2022-05-31 20:24:54 -04:00
Jon Evans
9470bd15a1
PNS: Fix skew calculation with pad-to-die specified
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11710
(cherry picked from commit 53dbd3bb02
)
2022-05-31 20:24:54 -04:00
Seth Hillbrand
6c0856c384
Fix PCAD silk layer for solder-side fp
...
The layer should be flipped based on the footprint mirror value rather
than the text mirror value (which is independent)
Fixes https://gitlab.com/kicad/code/kicad/issues/11652
2022-05-31 13:03:32 -07:00
Jeff Young
155620cc9a
Move H/V/45 mode from zone properties to toolbar.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8587
2022-05-29 21:30:15 +01:00
Jeff Young
1fb7532859
Prepare for a more uniform implementation of H/V/45 mode.
2022-05-29 21:30:14 +01:00
Jeff Young
b056bbd9b9
Initialize enabled state of dimension text orientation combobox.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11674
2022-05-28 19:42:06 +01:00
Jeff Young
80124d2463
Write out partial pad-stacks for blind/buried/microvias.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11692
2022-05-28 00:19:13 +01:00
Jeff Young
2a525cf986
Coding standards.
2022-05-28 00:09:47 +01:00
Seth Hillbrand
35b79c2ec9
Make PCAD import case-insensitive
...
According to the PCAD specification, all tags are case insensitive.
Most exporters honor the defaults but there is always an outlier or two
Fixes https://gitlab.com/kicad/code/kicad/issues/11652
2022-05-27 10:09:40 -07:00
Mike Williams
21a7e050ab
REMOVED: PCB Editor Layer Alignment Target
...
No longer used by modern PCB processes.
Only the code to add the target to the board has been removed. Parsing
code for existing designs with targets is left in place.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10006
2022-05-26 08:47:02 -04:00
Jeff Young
ae1ece7a78
Fix duplicate spaces before units.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11675
2022-05-26 10:54:08 +01:00
Jeff Young
4afca58ce7
Eagle octagonal pads are regular (~29% chamfered).
...
Also cleans up setting of KeepTopBottom (which is ignored unless
we're doing optional flahing -- which we're not for Eagle imports).
Fixes https://gitlab.com/kicad/code/kicad/issues/11664
2022-05-23 10:43:34 +01:00
Jeff Young
24ddf1ad20
Don't use zone connections to control optional via flashing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11299
2022-05-23 10:26:52 +01:00
Jeff Young
3f502b313d
Don't return false when a particular item doesn't connect.
...
We still have to search all the other items, as they might connect.
2022-05-23 10:26:18 +01:00
Jeff Young
a33e5c53be
Replace missing setting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11453
2022-05-20 22:41:48 +01:00
Jeff Young
f7fcc310f8
Select next/prev copper layer whether we start on copper or not.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11600
2022-05-20 15:59:29 +01:00
jean-pierre charras
a09bd4ae12
Fix a bug in commit 57e59a49
2022-05-20 15:08:50 +02:00
Jeff Young
fa11e1c097
Take text height into account as well as thickness for knockout margin.
...
Also centralizes calculation so all clients will get the same answer.
Fixes https://gitlab.com/kicad/code/kicad/issues/11636
2022-05-20 12:29:01 +01:00
jean-pierre charras
e54ba87895
fix FootprintWizardBase.py compatibility with recent code.
2022-05-20 12:58:07 +02:00
jean-pierre charras
57e59a4959
Pcbnew, on line DRC when moving footprints: add visible collisions between courtyards
2022-05-20 12:58:05 +02:00
Jeff Young
deeb7d4d6d
Make use of board stackup data when exporting VRML.
...
Specifically layer colors and board thickness.
Fixes https://gitlab.com/kicad/code/kicad/issues/11627
2022-05-19 23:58:33 +01:00