Seth Hillbrand
cf63ae7ae2
pcbnew: Show clearance when editing tracks
When requested by display options, we should show the track clearance
when dragging tracks.
Fixes: lp:1818343
* https://bugs.launchpad.net/kicad/+bug/1818343
7 years ago
jean-pierre charras
d259459a14
Pcbnew: add a new primitive pad shape: chamfered round rect pad.
Allows 0 to 4 chamfered corners, not only one.
A custom shape allow this kind of shape. However because it is a primitive,
it is easier to edit and it support thermal reliefs.
7 years ago
Seth Hillbrand
576261cad1
pcbnew: code style cleanup
7 years ago
Seth Hillbrand
c92424898c
pcbnew: Replace magic number segment counts
Where we set 32 segments per circle, the magic number is replaced by the
same value as the common define ARC_APPROX_SEGMENTS_COUNT_HIGH_DEF
7 years ago
Seth Hillbrand
f9dfbe6f4d
Code formatting
7 years ago
Seth Hillbrand
0614f59973
pcbnew: Add edge polygons to pns keepout
Fixes: lp:1806846
* https://bugs.launchpad.net/kicad/+bug/1806846
7 years ago
Jeff Young
3439551543
Implement a work-around for net-ties.
Fixes: lp:1799318
* https://bugs.launchpad.net/kicad/+bug/1799318
7 years ago
Seth Hillbrand
4f672f0d39
Fixing a number of dynamic_casts
Dynamic casts should only be used when we explicitly check for the
resulting pointer to be NULL. Where we know the class is castable we
can use static_cast, save on overhead and ensure our resulting pointer
is non-null.
7 years ago
Jeff Young
9f068d66a8
Don't use diff-pair gap as a clearance.
Fixes: lp:1789690
* https://bugs.launchpad.net/kicad/+bug/1789690
7 years ago
Jeff Young
ba8647f676
Fix compiler warning.
7 years ago
Jeff Young
c90a3efea2
Change KIDIALOG hashing algorithm to __FILE__ + __LINE__.
Using Title + Message wasn't working for all the dialogs which
did substitutions in the message (which was a lot of them).
Fixes: lp:1789348
* https://bugs.launchpad.net/kicad/+bug/1789348
7 years ago
Seth Hillbrand
2398edda38
pcbnew: Only dp clearance matrix when routing dp
Fixes: lp:1787766
* https://bugs.launchpad.net/kicad/+bug/1787766
7 years ago
Seth Hillbrand
dc4125206b
GAL: Add a selected item layer
The selected items should be displayed above the rest of the items but
below informational overlays.
Fixes: lp:1789505
* https://bugs.launchpad.net/kicad/+bug/1789505
7 years ago
Jeff Young
6bb75b071a
Implement DRC for PCB & module copper items in PNS router.
Fixes: lp:1788699
* https://bugs.launchpad.net/kicad/+bug/1788699
7 years ago
jean-pierre charras
3c6e8c4a40
More support of DRW_SEGMENT Bezier curve (support in 3D viewer, and PnS router).
8 years ago
Jeff Young
ff34c7a948
Eradicate g_userUnit from router.
(cherry picked from commit 5e90e6b)
8 years ago
Jeff Young
eacaa39aa2
Remove global units usage from GetSelectionText...
... and GetMsgPanelInfo.
Step 4 in the g_UserUnit eradication effort.
Also removes a couple of conversion routines that were close
enough to extinction.
(cherry picked from commit c75da51)
8 years ago
Seth Hillbrand
44c1f5785b
pcbnew: Set dp clearance based on netclass
Minimum differential pair clearance should be limited to the netclass
differential pair spacing. This also cleans up some unused code that
was left over from previous work on differential pair clearances.
Fixes: lp:1673632
* https://bugs.launchpad.net/kicad/+bug/1673632
8 years ago
Seth Hillbrand
bc7bd107d9
Fix a number of untranslated strings.
8 years ago
Jeff Young
2bd0a027a2
Improved error messages for diff-pair routing.
Fixes: lp:1542592
* https://bugs.launchpad.net/kicad/+bug/1542592
8 years ago
Jeff Young
c5696738d2
Use diff-pair-via clearance when checking against vias.
Fixes: lp:1742275
* https://bugs.launchpad.net/kicad/+bug/1742275
8 years ago
Seth Hillbrand
b2c4519c2c
Setting custom pad shape to be outline for PNS
Changes SHAPE_CONVEX to SHAPE_SIMPLE to better reflect the limitations.
Changes SHAPE_LINE_CHAIN::PointInside calculation to allow points
strictly inside a line chain
Fixes: lp:1768862
* https://bugs.launchpad.net/kicad/+bug/1768862
8 years ago
Seth Hillbrand
2a87117edc
Speed load/unload of complex boards
Corrects an error in polyline estimation
Syncs graphics to world PNS by whole layer set rather than
individual layer at a time.
Prevents reloading of full pns TOOL_BASE during reset of tools unless
the tool is being activated.
Fixes: lp:1766626
* https://bugs.launchpad.net/kicad/+bug/1766626
8 years ago
Tomasz Włostowski
ebd2b78f86
pcbnew/router: respect default net clearance for objects that don't have any net (e.g. board outline)
Fixes: lp:1753904
* https://bugs.launchpad.net/kicad/+bug/1753904
8 years ago
Maciej Suminski
18167f829a
Derive KIDIALOG from wxRichMessageDialog
wxRichMessageDialog already offers a dialog with a checkbox, so
the custom dialog setup code is not necessary anymore.
8 years ago
Maciej Suminski
1d5df8e975
Renamed KI_DIALOG to KIDIALOG
8 years ago
Maciej Suminski
918ac567e5
Fix constant naming conflict in KI_DIALOG
8 years ago
Maciej Suminski
fe0e44ba3d
PNS: display a message in case of keep-out zone triangulation failure
8 years ago
Maciej Suminski
ab8e2419c2
PNS: Handle no-tracks setting in keep out zones
Fixes: lp:1748832
* https://bugs.launchpad.net/kicad/+bug/1748832
8 years ago
Jon Evans
0504a6db52
Don't sync zone if polygon triangulation fails
8 years ago
jean-pierre charras
cf5d93857f
PnS router: add support for circles in board outline
8 years ago
Tomasz Włostowski
dfb98ce70b
router: use more kicad-ish arc representation
8 years ago
Tomasz Włostowski
bc7ca08f07
router: check type before static_cast-ing
8 years ago
Tomasz Włostowski
271363f822
router: support for board outline
8 years ago
Tomasz Włostowski
2faf1a1ed3
Initial support for keepout zones in the P&S router.
8 years ago
jean-pierre charras
1858852f57
rename files
8 years ago
jean-pierre charras
39b4afecfa
fix code after file renaming
8 years ago
jean-pierre charras
8552f3fedf
fix code after renaming files
8 years ago
Camille
9ff66a5274
Fix unnecessary value parameter detected by clang-tidy. - Replace value parameter by const reference parameter or move-assignement in some cases
8 years ago
jean-pierre charras
f85a886ae4
Bug fix: Custom shaped pads having a not convex shape not magnetic on PnS router.
8 years ago
Tomasz Włostowski
3c6d17026e
pcbnew: router now respects local pad clearances correctly
Fixes: lp:1558858
* https://bugs.launchpad.net/kicad/+bug/1558858
8 years ago
Tomasz Włostowski
26f862a9d0
refactoring: remove PNS router dependency on PCB_EDIT_FRAME
8 years ago
Tomasz Włostowski
81d1e17f02
refactoring: renamed pcbstruct.h to pcb_display_options.h, DISPLAY_OPTIONS->PCB_DISPLAY_OPTIONS
8 years ago
jean-pierre charras
a43f3ab1fe
replace "BasicShape" by "Primitive" in code, a better name
8 years ago
jean-pierre charras
e2d3fcec02
Add support for custom pad shape. Full support in DRC and PnS.
add option to use shape or convex hull as clearance area in zones.
simplify code to handle clearance area
9 years ago
jean-pierre charras
e3d69b619f
Pcbnew: fix issue in dialog_fp_lib_table: when the only changes were the plugin name, changes were not taken in account.
Because the FP_LIB_TABLE::operator == was incorrect
9 years ago
hauptmech
20b4226a25
Router recognizes busses of differential pairs
Fixes: lp:1443330
* https://bugs.launchpad.net/kicad/+bug/1443330
9 years ago
Tomasz Włostowski
3b16d3cffe
further DLIST/Iterators cleanup, some code formatting
9 years ago
Tomasz Włostowski
3cba1007eb
Removed legacy connectivity/ratsnest algorithm, replaced with the new one. No legacy autorouting for the moment
9 years ago
Jon Evans
3ec28e2acf
Refactor layer enumerations to all live in the same place
9 years ago