kicad/pcbnew/router
Alex Shvartzkop 865e3a9f3c Improvements when working closer to 32-bit integer limits.
- Changes BOX2 size to extended coordinates.
- Adds BOX2ISafe to construct a BOX2I that will fit in int32.
- Adds more checks.
- Safer computations.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17670
2024-04-23 16:34:07 +00:00
..
CMakeLists.txt Add a m_forceMarkObstaclesMode warning when violating DRC. 2024-01-02 17:02:50 +00:00
pns_algo_base.cpp PNS: Only log events when EnableRouterDump is true 2023-08-07 23:48:24 +02:00
pns_algo_base.h
pns_arc.cpp
pns_arc.h Make the net identifier opaque to PNS router. 2023-08-22 15:17:02 +00:00
pns_component_dragger.cpp Add a m_forceMarkObstaclesMode warning when violating DRC. 2024-01-02 17:02:50 +00:00
pns_component_dragger.h Add a m_forceMarkObstaclesMode warning when violating DRC. 2024-01-02 17:02:50 +00:00
pns_debug_decorator.h Formatting (no functional changes). 2023-08-31 15:15:57 +01:00
pns_diff_pair.cpp Coverity issue fixes. 2023-08-28 09:29:56 -04:00
pns_diff_pair.h Make the net identifier opaque to PNS router. 2023-08-22 15:17:02 +00:00
pns_diff_pair_placer.cpp Don't use epsilon when calculating pushout force in dp placer. 2023-12-03 16:58:41 +00:00
pns_diff_pair_placer.h Make the net identifier opaque to PNS router. 2023-08-22 15:17:02 +00:00
pns_dp_meander_placer.cpp Allow DP meanders to (mostly) fit on adjacent segments. 2024-02-20 03:20:08 +00:00
pns_dp_meander_placer.h Use preview items instead of highlightNets & status popup 2023-12-02 16:15:43 +00:00
pns_drag_algo.h Add a m_forceMarkObstaclesMode warning when violating DRC. 2024-01-02 17:02:50 +00:00
pns_dragger.cpp Add a m_forceMarkObstaclesMode warning when violating DRC. 2024-01-02 17:02:50 +00:00
pns_dragger.h Add a m_forceMarkObstaclesMode warning when violating DRC. 2024-01-02 17:02:50 +00:00
pns_hole.cpp Tighten ownership model of PNS::ITEM. 2023-04-28 11:05:39 +01:00
pns_hole.h Make the net identifier opaque to PNS router. 2023-08-22 15:17:02 +00:00
pns_index.cpp Fixes for tuning patterns and router. 2023-11-28 20:55:39 +03:00
pns_index.h Make the net identifier opaque to PNS router. 2023-08-22 15:17:02 +00:00
pns_item.cpp output helpful net information in PNS debug 2024-04-21 11:11:21 -07:00
pns_item.h Make the net identifier opaque to PNS router. 2023-08-22 15:17:02 +00:00
pns_itemset.cpp performance efficiencies 2023-12-18 18:36:02 +00:00
pns_itemset.h Coverity issue fixes. 2023-08-28 09:29:56 -04:00
pns_joint.h Repair earlier fix for VVIAs. 2023-12-19 16:48:01 +00:00
pns_kicad_iface.cpp PNS: Fix a few memory leaks 2024-03-31 18:21:02 +02:00
pns_kicad_iface.h PNS: Fix a few memory leaks 2024-03-31 18:21:02 +02: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 Formatting, and a fix for a shadowed variable. 2023-09-12 13:45:28 +01:00
pns_line.h router: further changes to the ownership model 2023-04-11 15:51:00 +01:00
pns_line_placer.cpp Avoid case where whole line is new head 2024-04-19 17:54:29 -07:00
pns_line_placer.h Support arcs in Break Track. 2024-01-24 05:47:50 +03:00
pns_link_holder.h Remove cover type in link holder 2024-04-21 11:11:48 -07:00
pns_linked_item.h
pns_logger.cpp PNS Log Viewer: Refactor loading/saving functions 2023-08-09 22:21:14 +00:00
pns_logger.h pns_debug_tool: Fix "save as" to save log file with new router state 2024-02-12 21:22:57 +01:00
pns_meander.cpp Tweak default meander settings. 2024-02-20 03:20:08 +00:00
pns_meander.h Increase unconstrained tuning length to 1km. 2024-02-09 19:25:46 +03:00
pns_meander_placer.cpp Use preview items instead of highlightNets & status popup 2023-12-02 16:15:43 +00:00
pns_meander_placer.h Use preview items instead of highlightNets & status popup 2023-12-02 16:15:43 +00:00
pns_meander_placer_base.cpp Support min/max rules in diff pair placer and skew placer. 2023-10-17 13:30:58 +01:00
pns_meander_placer_base.h Use preview items instead of highlightNets & status popup 2023-12-02 16:15:43 +00:00
pns_meander_skew_placer.cpp More modern look & feel for tuning status popup. 2023-10-17 13:30:58 +01:00
pns_meander_skew_placer.h Remove shadowed variable. 2023-12-18 14:24:04 +00: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
pns_node.cpp Re-add routine to remove duplicate points 2024-04-10 17:25:58 -07:00
pns_node.h When dragging a via, we need to get all obstacles 2024-03-29 15:39:57 -07:00
pns_optimizer.cpp PNS: Fix a few memory leaks 2024-03-31 18:21:02 +02:00
pns_optimizer.h PNS: Fix a few memory leaks 2024-03-31 18:21:02 +02:00
pns_placement_algo.h Make the net identifier opaque to PNS router. 2023-08-22 15:17:02 +00:00
pns_router.cpp Reset placer when routing start fails to prevent crash on next usage. 2024-02-20 03:20:08 +00:00
pns_router.h Support arcs in Break Track. 2024-01-24 05:47:50 +03: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 Make the net identifier opaque to PNS router. 2023-08-22 15:17:02 +00:00
pns_shove.cpp Honour 90-degree router mode in a few more places. 2023-10-26 14:18:28 +01:00
pns_shove.h PNS: Only log events when EnableRouterDump is true 2023-08-07 23:48:24 +02:00
pns_sizes_settings.cpp
pns_sizes_settings.h Add variable initializations 2023-06-15 23:49:24 +01:00
pns_solid.cpp Don't assume an error location for PAD::GetEffectivePolygon(). 2023-10-13 13:59:26 +01:00
pns_solid.h Don't assume an error location for PAD::GetEffectivePolygon(). 2023-10-13 13:59:26 +01:00
pns_tool_base.cpp Improvements when working closer to 32-bit integer limits. 2024-04-23 16:34:07 +00:00
pns_tool_base.h Improvements when working closer to 32-bit integer limits. 2024-04-23 16:34:07 +00:00
pns_topology.cpp Pick DP coupled segment closest to start item and baseline. 2024-02-20 22:06:00 +03:00
pns_topology.h Rewrite followTrivialPath as iterative 2023-11-28 06:57:50 -08:00
pns_utils.cpp router: hole as first class objects, wip 2023-04-11 15:51:00 +01:00
pns_utils.h router: hole as first class objects, wip 2023-04-11 15:51:00 +01:00
pns_via.cpp When dragging a via, we need to get all obstacles 2024-03-29 15:39:57 -07:00
pns_via.h We don't want to do collision testing against virtual vias. 2023-10-22 20:35:15 +01:00
pns_walkaround.cpp Honour 90-degree router mode in a few more places. 2023-10-26 14:18:28 +01:00
pns_walkaround.h Remove PNS APIEXPORT that never made sense 2023-09-08 18:44:46 -04:00
range.h
ranged_num.h
router_preview_item.cpp Silence deprecation warning about enum * fp type 2024-04-12 22:55:43 -04:00
router_preview_item.h Silence deprecation warning about enum * fp type 2024-04-12 22:55:43 -04:00
router_status_view_item.cpp Add a m_forceMarkObstaclesMode warning when violating DRC. 2024-01-02 17:02:50 +00:00
router_status_view_item.h Add a m_forceMarkObstaclesMode warning when violating DRC. 2024-01-02 17:02:50 +00:00
router_tool.cpp Improvements when working closer to 32-bit integer limits. 2024-04-23 16:34:07 +00:00
router_tool.h Remove PNS APIEXPORT that never made sense 2023-09-08 18:44:46 -04:00
time_limit.cpp
time_limit.h