kicad/pcbnew/router
Jeff Young 34e134c5e5 Don't allow clearanceEpsilon to force clearance < 0.
Also, a plated hole has the max clearance of hole_clearance and
copper_clearance.

Fixes https://gitlab.com/kicad/code/kicad/issues/13237
2022-12-24 12:56:41 +00:00
..
CMakeLists.txt router: factor out POSTURE_SOLVER to more generic MOUSE_TRAIL_TRACER class 2021-02-25 17:18:23 +01:00
length_tuner_tool.cpp router: Allow highlighting both DP nets when routing. 2022-12-06 05:24:23 +03:00
length_tuner_tool.h Add length tuner settings to toolbar context menu 2021-05-12 02:34:52 +00:00
pns_algo_base.cpp More NULL expunging. 2021-07-20 07:27:18 -04:00
pns_algo_base.h router: expose current view area to the router algorithms so that the optimizer could know not to mess with traces/vias not currently visible to the user (wip) 2021-02-25 17:18:23 +01:00
pns_arc.cpp Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_arc.h PNS: Pick up segments directly between pads when dragging components 2021-07-03 19:50:04 -04:00
pns_component_dragger.cpp router: rework the DEBUG_DECORATOR a bit: 2022-03-03 01:02:00 +01:00
pns_component_dragger.h PNS: Pick up segments directly between pads when dragging components 2021-07-03 19:50:04 -04:00
pns_debug_decorator.h router: rework the DEBUG_DECORATOR a bit: 2022-03-03 01:02:00 +01:00
pns_diff_pair.cpp Fix success conditions in DP placer 2021-12-12 13:05:38 -05:00
pns_diff_pair.h Copy via flags down to the level the router consumes. 2022-10-13 17:41:42 +01:00
pns_diff_pair_placer.cpp Use same ratsnest colours in the router as the rest of KiCad. 2022-10-16 22:21:14 +01:00
pns_diff_pair_placer.h PNS: Add CurrentStart() to placers. 2022-09-28 13:29:52 +00:00
pns_dp_meander_placer.cpp router: Refactor m_padToDieLength out of meander placer base. 2022-12-02 01:03:34 +03:00
pns_dp_meander_placer.h PNS: Add CurrentStart() to placers. 2022-09-28 13:29:52 +00:00
pns_drag_algo.h
pns_dragger.cpp router: Match segment endpoint calculation between dragger and the tool. 2022-12-21 20:55:49 +03:00
pns_dragger.h We don't always have a line when dragging. 2022-10-10 11:44:17 +01:00
pns_index.cpp More NULL expunging. 2021-07-20 07:27:18 -04:00
pns_index.h Rename layer ids file. 2021-07-29 16:03:25 +01:00
pns_item.cpp router: extend dump format to support automatic regressions tests of interactive routing scenarios 2022-10-31 11:17:31 +01:00
pns_item.h router: extend dump format to support automatic regressions tests of interactive routing scenarios 2022-10-31 11:17:31 +01:00
pns_itemset.cpp PNS: fix some weirdness identified by PVS 2021-04-07 23:16:56 -04:00
pns_itemset.h More NULL expunging. 2021-07-20 07:27:18 -04:00
pns_joint.h PNS: Fix IsLineCorner logic 2022-07-12 02:49:24 +00:00
pns_kicad_iface.cpp Don't allow clearanceEpsilon to force clearance < 0. 2022-12-24 12:56:41 +00:00
pns_kicad_iface.h Use same ratsnest colours in the router as the rest of KiCad. 2022-10-16 22:21:14 +01:00
pns_layerset.h We must check clearance on all layers of multi-layer items. 2022-10-24 00:14:12 +01:00
pns_line.cpp router: fix another corner case in LINE::Walkaround 2022-10-31 11:17:31 +01:00
pns_line.h router: LINE::SetShape() should update the attached via position with the last point of the new line shape 2022-10-31 11:17:32 +01:00
pns_line_placer.cpp router: fix regression in Backspace (unfix/undo last segment) caused by redesign of the line placement algo 2022-11-15 23:05:53 +01:00
pns_line_placer.h router: fix regression in Backspace (unfix/undo last segment) caused by redesign of the line placement algo 2022-11-15 23:05:53 +01:00
pns_link_holder.h More wide-string declarations. 2022-02-05 22:03:04 +00:00
pns_linked_item.h
pns_logger.cpp router: extend dump format to support automatic regressions tests of interactive routing scenarios 2022-10-31 11:17:31 +01:00
pns_logger.h router: log and replay the 'unfix' events too 2022-11-15 23:05:53 +01:00
pns_meander.cpp router: Various bugfixes in length tuning meandering 2022-12-04 16:30:00 +00:00
pns_meander.h router: Various bugfixes in length tuning meandering 2022-12-04 16:30:00 +00:00
pns_meander_placer.cpp router: Refactor m_padToDieLength out of meander placer base. 2022-12-02 01:03:34 +03:00
pns_meander_placer.h router: Refactor m_padToDieLength out of meander placer base. 2022-12-02 01:03:34 +03:00
pns_meander_placer_base.cpp router: Various bugfixes in length tuning meandering 2022-12-04 16:30:00 +00:00
pns_meander_placer_base.h router: Refactor m_padToDieLength out of meander placer base. 2022-12-02 01:03:34 +03:00
pns_meander_skew_placer.cpp router: Refactor m_padToDieLength out of meander placer base. 2022-12-02 01:03:34 +03:00
pns_meander_skew_placer.h PNS: Account for via stack height in diff pair length tuner 2021-04-20 19:31:10 -04:00
pns_mouse_trail_tracer.cpp router: rework the DEBUG_DECORATOR a bit: 2022-03-03 01:02:00 +01:00
pns_mouse_trail_tracer.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_node.cpp router: Clear rule resolver caches on routing/dragging start. 2022-11-17 02:10:21 +05:00
pns_node.h router: Clear rule resolver caches on routing/dragging start. 2022-11-17 02:10:21 +05:00
pns_optimizer.cpp router: temporaily disable upper corner count limit constraint in the OPTIMIZER which prevents almost any optimization of shoved lines 2022-10-31 11:17:32 +01:00
pns_optimizer.h Pass VECTOR2I objects by reference instead of on the stack. 2021-07-27 08:41:27 -04:00
pns_placement_algo.h PNS: Add CurrentStart() to placers. 2022-09-28 13:29:52 +00:00
pns_router.cpp router: Limit the amount of move attempts in ROUTER::Finish 2022-12-07 19:24:13 +03:00
pns_router.h router: GetUpdatedItems() now returns an unique_ptr to the temporary NODE so that the items it owns do not get deleted upon return from the method 2022-11-18 15:14:33 +01:00
pns_routing_settings.cpp router: add via force propagation iteration limit as a user-controllable parameter in ROUTING_SETTINGS 2022-10-31 11:17:32 +01:00
pns_routing_settings.h router: add via force propagation iteration limit as a user-controllable parameter in ROUTING_SETTINGS 2022-10-31 11:17:32 +01:00
pns_segment.h router: extend dump format to support automatic regressions tests of interactive routing scenarios 2022-10-31 11:17:31 +01:00
pns_shove.cpp router: some extra debug geometry dumps in SHOVE 2022-10-31 11:17:32 +01:00
pns_shove.h Replace boost::optional with std::optional 2022-08-25 15:50:47 -07:00
pns_sizes_settings.cpp Honour pre-defined-size selections for diff pairs. 2021-03-02 12:12:05 +00:00
pns_sizes_settings.h Missed some other uses of m_startItem in previous commit. 2022-10-07 14:01:46 +01:00
pns_solid.cpp PNS: Remove offsets from hull generation 2022-06-04 00:04:03 -04:00
pns_solid.h Finish with EDA_ANGLE. 2022-01-16 21:15:40 +00:00
pns_tool_base.cpp router: Allow highlighting both DP nets when routing. 2022-12-06 05:24:23 +03:00
pns_tool_base.h router: Allow highlighting both DP nets when routing. 2022-12-06 05:24:23 +03:00
pns_topology.cpp Fix an incorrect calculation in length tuning tools. 2022-11-12 13:11:27 +00:00
pns_topology.h PCB: Finish Route, Route From End 2022-08-17 03:15:46 +00:00
pns_tune_status_popup.cpp Improve contrast of status popup text on Mac. 2022-09-04 21:08:01 +01:00
pns_tune_status_popup.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_utils.cpp router: another attempt at improving 'kink' robustness of the hull generator 2022-06-09 20:51:21 +02:00
pns_utils.h router: P&S-specific hull/line interection function that correctly rejects segments/vertices that only touch the hull polygons without penetrating them 2021-05-29 00:13:24 +02:00
pns_via.cpp router: more resilient via force propagation 2022-11-18 15:14:09 +01:00
pns_via.h router: improved heuristics in via force propagation algorithm 2022-10-31 11:17:32 +01:00
pns_walkaround.cpp router: allow caller to override the 'safety' length limit in WALKAROUND 2022-10-31 11:17:32 +01:00
pns_walkaround.h router: allow caller to override the 'safety' length limit in WALKAROUND 2022-10-31 11:17:32 +01:00
range.h
ranged_num.h
router_preview_item.cpp ADDED: Display calculated clearance in status bar 2022-07-21 15:44:48 -07:00
router_preview_item.h router: use SHAPEs and PNS::ITEMs only in the ROUTER_PREVIEW_ITEM 2022-06-03 23:28:40 +02:00
router_tool.cpp router: Allow highlighting both DP nets when routing. 2022-12-06 05:24:23 +03:00
router_tool.h Re-entrancy guard for router tool. 2022-10-17 13:21:07 +01:00
time_limit.cpp
time_limit.h