kicad/pcbnew/router
Jon Evans dd828bd964 PNS: Bring back original Highlight Collisions behavior
From discussion with Tom, Jeff, and Wayne, it appears as though
we all agreed that Highlight Collisions should behave like it
did in 5.1, which is to say, always just highlight collisions,
never prevent them.  The Allow DRC Violations checkbox just
controls whether or not you can fix/commit the head line if it
has violations; you are not prevented from moving the head
line to violating positions in any case.

Right now, there does not seem to be much demand for a separate
"Stop at First Obstacle" mode since Walkaround basically does that
but better, but we agreed that if there is demand for it in the
future, it should be implemented as a new router mode rather than
a behavior of Highlight Collisions mode controlled by the Allow
DRC Violations checkbox.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/7828
2021-04-18 21:01:07 -04: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 Add undo/redo handling to length tuner event loop 2021-04-05 19:58:14 -04:00
length_tuner_tool.h Move the router tools to a TOOL_MENU context menu 2020-09-24 23:51:34 +01:00
pns_algo_base.cpp PNS: Fix visible area restriction 2021-04-10 16:13:08 -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 Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_component_dragger.cpp Clean up a confusing API. 2021-04-10 11:08:02 +01:00
pns_component_dragger.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_debug_decorator.h router: debug points now have variable size 2021-02-25 17:18:23 +01:00
pns_diff_pair.cpp PNS: Use existing seg direction if both DP segs are parallel 2021-04-12 22:34:13 -04:00
pns_diff_pair.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_diff_pair_placer.cpp PNS: Fix propagateDpHeadForces obstacle calculation 2021-04-17 22:37:30 -04:00
pns_diff_pair_placer.h PNS: keep last valid diff pair trace as current state 2021-04-14 23:21:10 -04:00
pns_dp_meander_placer.cpp Update PNS length tuning algorithm to match the new BOARD algorithm 2021-04-04 20:27:22 -04:00
pns_dp_meander_placer.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_drag_algo.h Formatting. 2021-01-04 19:19:55 +00:00
pns_dragger.cpp PNS: Apply co-linear seg merging to drag operations 2021-04-11 22:32:11 -04:00
pns_dragger.h PNS: Keep last valid drag solution in the node 2021-04-07 21:59:23 -04:00
pns_index.cpp Implement hole clearance and hole-to-hole clearance in router. 2021-01-01 00:31:36 +00:00
pns_index.h Formatting. 2021-01-04 19:19:55 +00:00
pns_item.cpp Improve feedback when routing in highlight collisions mode. 2021-01-01 17:25:37 +00:00
pns_item.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_itemset.cpp PNS: fix some weirdness identified by PVS 2021-04-07 23:16:56 -04:00
pns_itemset.h PNS: fix some weirdness identified by PVS 2021-04-07 23:16:56 -04:00
pns_joint.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_kicad_iface.cpp PNS: even more free performance 2021-04-18 09:50:06 -04:00
pns_kicad_iface.h CHANGED: Account for via height in track length calculations 2021-04-04 13:59:18 -04:00
pns_layerset.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_line.cpp Safety check suggested by Coverity 2021-04-12 20:42:50 -04:00
pns_line.h PNS: Fix dragging of segments with arcs in line 2021-04-11 10:18:57 -04:00
pns_line_placer.cpp PNS: Bring back original Highlight Collisions behavior 2021-04-18 21:01:07 -04:00
pns_line_placer.h Fix whitespace errors 2021-02-25 17:18:23 +01:00
pns_link_holder.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_linked_item.h pcbnew: Adding arcs to PNS 2020-02-21 16:11:41 -08:00
pns_logger.cpp PNS: fix some weirdness identified by PVS 2021-04-07 23:16:56 -04:00
pns_logger.h router: clearer distinction between LOGGER and DEBUG_DECORATOR classes. 2020-07-22 18:05:54 +02:00
pns_meander.cpp Allow SHAPE_LINE_CHAIN and SHAPE_ARC to be mirrored using a SEG 2021-04-11 13:27:25 +00:00
pns_meander.h Allow SHAPE_LINE_CHAIN and SHAPE_ARC to be mirrored using a SEG 2021-04-11 13:27:25 +00:00
pns_meander_placer.cpp Update PNS length tuning algorithm to match the new BOARD algorithm 2021-04-04 20:27:22 -04:00
pns_meander_placer.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_meander_placer_base.cpp Update PNS length tuning algorithm to match the new BOARD algorithm 2021-04-04 20:27:22 -04:00
pns_meander_placer_base.h Update PNS length tuning algorithm to match the new BOARD algorithm 2021-04-04 20:27:22 -04:00
pns_meander_skew_placer.cpp Update PNS length tuning algorithm to match the new BOARD algorithm 2021-04-04 20:27:22 -04:00
pns_meander_skew_placer.h Comment-only changes 2020-01-10 16:43:01 -08:00
pns_mouse_trail_tracer.cpp GRID_HELPER: fixed arithmetic issue in segment snap distance check disguised as 'excessive optimization' by the dragger in the router 2021-02-25 17:18:23 +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: Apply co-linear seg merging to drag operations 2021-04-11 22:32:11 -04:00
pns_node.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
pns_optimizer.cpp PNS: Apply co-linear seg merging to drag operations 2021-04-11 22:32:11 -04:00
pns_optimizer.h Fix whitespace errors 2021-02-25 17:18:23 +01:00
pns_placement_algo.h router: backspace key to undo last fixed segment(s) 2020-02-27 22:02:56 +01:00
pns_router.cpp Clean up a confusing API. 2021-04-10 11:08:02 +01:00
pns_router.h CHANGED: Account for via height in track length calculations 2021-04-04 13:59:18 -04:00
pns_routing_settings.cpp PNS: Allow control of area-restricted drag optimization 2021-04-10 15:17:39 -04:00
pns_routing_settings.h PNS: Allow control of area-restricted drag optimization 2021-04-10 15:17:39 -04:00
pns_segment.h Repair ARC copy constructor. 2020-11-01 00:10:08 +00:00
pns_shove.cpp router: fix via shoving regression. 2021-04-19 00:43:30 +02:00
pns_shove.h Commenting and naming for clarity. 2021-01-05 16:54:52 +00: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 Warn when diff pair router can't start due to too-small-gap. 2021-03-30 19:49:23 +01:00
pns_solid.cpp Handle arc in buildHullForPrimitiveShape 2021-03-25 21:25:30 -04:00
pns_solid.h Initialize variables properly 2021-01-18 18:35:10 +00:00
pns_tool_base.cpp PNS: Don't snap to end items if snapping is disabled by modifier key 2021-04-04 10:22:23 -04:00
pns_tool_base.h Push shared parts of GRID_HELPERs into common. 2021-01-16 23:18:10 +00:00
pns_topology.cpp Fix crash when attempting to tune discontinuous lines 2021-04-06 09:07:11 -04:00
pns_topology.h Update PNS length tuning algorithm to match the new BOARD algorithm 2021-04-04 20:27:22 -04:00
pns_tune_status_popup.cpp Better colors for length tuning popup in dark mode 2021-04-04 20:33:59 -04: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 Implement hole clearance and hole-to-hole clearance in router. 2021-01-01 00:31:36 +00:00
pns_utils.h pcbnew: Adding arcs to PNS 2020-02-21 16:11:41 -08:00
pns_via.cpp Implement hole clearance and hole-to-hole clearance in router. 2021-01-01 00:31:36 +00:00
pns_via.h router: VIA SetDrill() and SetPosition() must update the hole shape too. 2021-04-19 00:43:15 +02:00
pns_walkaround.cpp router: use new LINE::Walkaround in the walkaround algo 2021-02-25 17:18:23 +01:00
pns_walkaround.h A few Coverity fixes. 2020-03-30 09:50:26 +02:00
range.h
ranged_num.h
router_preview_item.cpp Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
router_preview_item.h Trim includes (and use consistent terminology in error messages). 2021-03-21 20:15:47 +00:00
router_tool.cpp PNS: Fix visible area restriction 2021-04-10 16:13:08 -04:00
router_tool.h Fix state issue in router's switch layer handling. 2021-04-01 18:10:04 +01:00
time_limit.cpp
time_limit.h Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00