kicad/pcbnew/router
Jeff Young dfd11b7596 Reconcile PNS router with DRC.
Hole-to-hole is only for drilled holes.
NPTH slots also get EDGE_CLEARANCE applied.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/14771

(cherry picked from commit df763eaf88)
(cherry picked from commit ad9109cad4)
2023-05-28 19:38:27 +02:00
..
CMakeLists.txt router: further changes to the ownership model 2023-04-14 00:10:01 +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 Fix a typo. 2023-05-08 03:32:32 +03:00
pns_component_dragger.h router: When dragging tracks, don't snap to parts of the original line. 2023-01-27 11:06:36 +03:00
pns_debug_decorator.h router: Hotglue the debug graphics back to pcbnew. 2022-12-30 14:44:48 +05:00
pns_diff_pair.cpp Don't call BuildInitialTrace() for entry gateways. 2023-05-04 11:52:02 +01:00
pns_diff_pair.h Don't steal an existing via's hole. 2023-04-14 10:09:03 +01:00
pns_diff_pair_placer.cpp router: rework ITEM ownership model. 2023-04-14 00:09:49 +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: Re-add electrical path lines drawing for length tuning. 2023-02-01 20:36:52 +03:00
pns_dp_meander_placer.h PNS: Add CurrentStart() to placers. 2022-09-28 13:29:52 +00:00
pns_drag_algo.h router: When dragging tracks, don't snap to parts of the original line. 2023-01-27 11:06:36 +03:00
pns_dragger.cpp router: prevent pushout/bogus collision of via with is own hole (or copper) when dragging 2023-05-24 19:47:20 -07:00
pns_dragger.h router: Remove extra qualification. 2023-01-27 11:56:23 +03:00
pns_hole.cpp Tighten ownership model of PNS::ITEM. 2023-04-28 11:03:24 +01:00
pns_hole.h Don't allow collisions with self. 2023-05-24 08:54:27 -07: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: prevent pushout/bogus collision of via with is own hole (or copper) when dragging 2023-05-24 19:47:20 -07:00
pns_item.h router: prevent pushout/bogus collision of via with is own hole (or copper) when dragging 2023-05-24 19:47:20 -07:00
pns_itemset.cpp router: rework ITEM ownership model. 2023-04-14 00:09:49 +01:00
pns_itemset.h router: rework ITEM ownership model. 2023-04-14 00:09:49 +01:00
pns_joint.h Tighten ownership model of PNS::ITEM. 2023-04-28 11:03:24 +01:00
pns_kicad_iface.cpp Reconcile PNS router with DRC. 2023-05-28 19:38:27 +02:00
pns_kicad_iface.h Fix PNS_KICAD_IFACE_BASE::IsFlashedOnLayer() to be able to handle multi-layer queries. 2023-04-14 10:59:10 +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 Tighten ownership model of PNS::ITEM. 2023-04-28 11:03:24 +01:00
pns_line.h router: further changes to the ownership model 2023-04-14 00:10:01 +01:00
pns_line_placer.cpp PNS: Collision search context may be null 2023-05-14 21:21:19 +00: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 Coverity fixes and code cleaning. 2023-03-04 13:14:59 -05:00
pns_logger.h Coverity fixes and code cleaning. 2023-03-04 13:14:59 -05:00
pns_meander.cpp router: Fix clamp in meander corner radius calculation. 2023-02-05 07:22:38 +03:00
pns_meander.h router: Various bugfixes in length tuning meandering 2022-12-04 16:30:00 +00:00
pns_meander_placer.cpp router: Re-add electrical path lines drawing for length tuning. 2023-02-01 20:36:52 +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: rework ITEM ownership model. 2023-04-14 00:09:49 +01: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: Re-add electrical path lines drawing for length tuning. 2023-02-01 20:36:52 +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: trying to improve the 'guess posture' algorithm to work well with both fix-all and fix-last-segment on click 2023-01-12 23:37:07 +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 PNS: Remove holes when removing items with holes 2023-05-08 02:48:55 +00:00
pns_node.h Add PNS::ITEM::BoardItem() call. 2023-04-14 10:09:03 +01:00
pns_optimizer.cpp Cleanup printf bits 2023-05-07 19:02:02 +03: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 Add PNS::ITEM::BoardItem() call. 2023-04-14 10:09:03 +01:00
pns_router.h Fix PNS_KICAD_IFACE_BASE::IsFlashedOnLayer() to be able to handle multi-layer queries. 2023-04-14 10:59:10 +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 PNS: Don't use clearance epsilon for calculating shove distances 2023-05-11 20:48:46 +00:00
pns_shove.h router: rework ITEM ownership model. 2023-04-14 00:09:49 +01: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 Coverity fixes and code cleaning. 2023-03-04 13:14:59 -05:00
pns_solid.cpp Cleanup printf bits 2023-05-07 19:02:02 +03:00
pns_solid.h Holes need a parent. 2023-05-08 14:51:47 +01:00
pns_tool_base.cpp Ease acquisition of a target item. 2023-04-09 23:13:44 +01:00
pns_tool_base.h router: Allow highlighting both DP nets when routing. 2022-12-06 05:24:23 +03:00
pns_topology.cpp router: rework ITEM ownership model. 2023-04-14 00:09:49 +01:00
pns_topology.h router: rework ITEM ownership model. 2023-04-14 00:09:49 +01: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: hole as first class objects, wip 2023-04-14 00:09:56 +01:00
pns_utils.h router: hole as first class objects, wip 2023-04-14 00:09:56 +01:00
pns_via.cpp Use Net() accessor uniformly; init hole parent in VIA::Clone() 2023-04-28 18:33:27 +01:00
pns_via.h Tighten ownership model of PNS::ITEM. 2023-04-28 11:03:24 +01:00
pns_walkaround.cpp router: hole as first class objects, wip 2023-04-14 00:09:56 +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 Add PNS::ITEM::BoardItem() call. 2023-04-14 10:09:03 +01:00
router_preview_item.h router: Re-add electrical path lines drawing for length tuning. 2023-02-01 20:36:52 +03:00
router_tool.cpp Fix diff pair router checking of min clearance 2023-01-31 19:53:35 -05:00
router_tool.h Re-entrancy guard for router tool. 2022-10-17 13:21:07 +01:00
time_limit.cpp
time_limit.h