kicad/pcbnew/tools
Seth Hillbrand 9be4bf0d14 Fix slow selection time when calculating clearance
The clearance between two zones could be rather slow.  This was in part
to trying to do triangle-triangle collisions between zones when we only
need outline collision and in part to the shape_line_chain collision
routine.  The shape_line_chain collisions don't need to recreate
segments on each iteration and should instead create them once and using
this to check all collisions

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

(cherry picked from commit 3cc1617f5a)
2024-04-01 17:55:29 -07:00
..
board_editor_control.cpp Kick the wildcards and file exts into a static class, export it from kicommon 2023-12-27 21:10:01 -05:00
board_editor_control.h ADDED: Search/inspect pane 2022-09-14 02:59:57 +00:00
board_inspection_tool.cpp Responsive: Avoid excessive repaints when toggling a netclass' rastnest visibility. 2024-03-15 09:45:09 -04:00
board_inspection_tool.h Cleanup. 2023-12-12 13:57:12 +00:00
board_reannotate_tool.cpp
board_reannotate_tool.h
convert_tool.cpp Handle holes in shapes when creating bounding hulls. 2024-02-22 23:36:24 +00:00
convert_tool.h ADDED: user-specified gap and linewidth for bounding hull creation. 2023-02-12 23:16:45 +00:00
drawing_stackup_table_tool.cpp Make sure group items get added to commit. 2024-01-22 23:34:34 +00:00
drawing_tool.cpp Warp after context menu only if actively drawing. 2024-02-22 23:36:59 +00:00
drawing_tool.h Use preview items instead of highlightNets & status popup 2023-12-02 16:15:43 +00:00
drc_tool.cpp Clean and standardize cross-probing action 2024-04-01 17:55:29 -07:00
drc_tool.h ADDED: DRC JSON report 2023-08-13 14:59:10 -04:00
edit_tool.cpp Only delete grouped / generated BOARD_ITEMS from the root item 2024-03-30 14:20:58 +00:00
edit_tool.h Only delete grouped / generated BOARD_ITEMS from the root item 2024-03-30 14:20:58 +00:00
edit_tool_move_fct.cpp Warp after context menu only if actively drawing. 2024-02-22 23:36:59 +00:00
footprint_editor_control.cpp Clearer naming. 2023-11-09 14:05:35 +00:00
footprint_editor_control.h Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
generator_tool.cpp Re-factor frame pointer out of generator API. 2023-12-16 16:11:45 +00:00
generator_tool.h Use preview items instead of highlightNets & status popup 2023-12-02 16:15:43 +00:00
generator_tool_pns_proxy.cpp Fix build; renaming. 2023-11-28 22:18:37 +03:00
generator_tool_pns_proxy.h Fix build; renaming. 2023-11-28 22:18:37 +03:00
global_edit_tool.cpp Fix layer swapping for multi-layer items. 2024-03-17 12:40:58 +00:00
global_edit_tool.h Fix layer swapping for multi-layer items. 2024-03-17 12:40:58 +00:00
group_tool.cpp Fix two unrelated bugs in ungroup. 2023-12-21 22:47:23 +00:00
group_tool.h
item_modification_routine.cpp Limit where the intersection of two lines can be 2024-03-01 15:57:45 -08:00
item_modification_routine.h performance efficiencies 2023-12-18 17:39:29 +00:00
pad_tool.cpp Do not re-number aperture pads 2024-03-01 13:04:47 -08:00
pad_tool.h Streamline explodePad undo. 2024-02-09 10:08:37 +00:00
pcb_actions.cpp Show friendly name in toolbar button tooltips. 2024-02-22 23:37:13 +00:00
pcb_actions.h Separate actions for single track and differential pair length tuning. 2024-02-08 14:58:28 +00:00
pcb_control.cpp Fix slow selection time when calculating clearance 2024-04-01 17:55:29 -07:00
pcb_control.h Initial rename of file plugin infrastructure components to IO 2023-12-24 01:22:21 +00:00
pcb_editor_conditions.cpp
pcb_editor_conditions.h
pcb_grid_helper.cpp Improve encapsulation of group internals. 2023-11-09 14:05:35 +00:00
pcb_grid_helper.h Grid helpers: remove view items on destruction 2023-10-23 09:39:08 -04:00
pcb_picker_tool.cpp Fail GAL on its header leaking audit 2023-09-18 19:52:27 -04:00
pcb_picker_tool.h
pcb_point_editor.cpp Fix PCB arc edit point order. 2024-01-18 13:51:32 +03:00
pcb_point_editor.h Use preview items instead of highlightNets & status popup 2023-12-02 16:15:43 +00:00
pcb_selection.cpp Remove overly-complex snapping layer for moving objects. 2024-01-20 22:04:56 +00:00
pcb_selection.h Remove overly-complex snapping layer for moving objects. 2024-01-20 22:04:56 +00:00
pcb_selection_conditions.cpp PCB Editor: make locking menu items conditional 2022-12-21 10:34:54 -05:00
pcb_selection_conditions.h PCB Editor: make locking menu items conditional 2022-12-21 10:34:54 -05:00
pcb_selection_tool.cpp Don't allow selection of footprint text in board editor. 2024-03-14 18:06:11 +00:00
pcb_selection_tool.h Fix selection tool behavior in footprint viewer 2024-02-05 14:50:17 +00:00
pcb_tool_base.cpp Code cleanup. 2024-01-04 16:13:42 +00:00
pcb_tool_base.h TOOL_EVENT: make command string non-optional 2022-09-19 10:23:09 -04:00
pcb_viewer_tools.cpp Add toggleHV45Mode item to the measure tool's context menu 2024-03-23 13:33:32 +00:00
pcb_viewer_tools.h
placement_tool.cpp AddMenuLanguageList should live in EDA_BASE_FRAME, its only user 2023-10-16 19:49:52 -04:00
placement_tool.h
position_relative_tool.cpp Improve encapsulation of group internals. 2023-11-09 14:05:35 +00:00
position_relative_tool.h Don't keep value of user or grid anchors between invocations. 2022-11-17 00:51:52 +00:00
tool_event_utils.cpp Switch TOOL_EVENT and TOOL_ACTION to have a std::any parameter 2023-06-20 21:52:50 +01:00
tool_event_utils.h Fix a few more doxygen errors (no actual code change) 2023-04-19 20:24:42 +02:00
zone_create_helper.cpp Improve clarity of default zone settings. 2024-02-03 13:22:16 +00:00
zone_create_helper.h
zone_filler_tool.cpp Use 64-bit type to represent microseconds. 2024-03-03 21:47:23 +03:00
zone_filler_tool.h Don't allow quit while zone filler is running. 2023-01-16 16:01:45 +00:00