kicad/pcbnew
Seth Hillbrand 7653a2bf99 Smarten connection width checker looking for splits
Fractured polygons are always fractured along the x-axis, so when
checking to see if a segment is a fracture point, we check if the y
coordinate is equal.  This avoids situations where there are multiple
fracture points between two inflection points

Additionally, we add a second check to ensure we don't hit spurious
blobs (all kinks should be symmetric and therefore be substantial in
each direction)

Fixes https://gitlab.com/kicad/code/kicad/issues/14130
2023-03-06 16:14:34 -08:00
..
autorouter Turn on and fix MSVC compliance mode issues 2023-02-12 16:30:37 -05:00
board_stackup_manager PANEL_BOARD_STACKUP: Ensure UI is re-linked to storage when importing 2023-02-10 12:58:04 -05:00
connectivity Use the common subset of nets for local update 2023-02-10 12:50:29 -08:00
dialogs Use constraints to determine netclas width 2023-03-05 22:35:19 -05:00
drc Smarten connection width checker looking for splits 2023-03-06 16:14:34 -08:00
exporters more about step exporter (export more copper graphic objects). 2023-03-06 16:36:37 +01:00
import_gfx Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
microwave Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
navlib Add support for using a SpaceMouse to pan & zoom in the schematic editor. 2022-03-31 19:03:41 +00:00
netlist_reader Move to requiring explicit action to save project settings 2023-03-04 14:25:07 -05:00
plugins Fix compile warning 2023-03-05 18:11:41 -05:00
python Add vector3 to swig 2023-03-05 15:59:22 -08:00
ratsnest Reduce static ratsnest opacity when moving items; tweak colors. 2022-12-07 21:01:56 +03:00
router Coverity fixes and code cleaning. 2023-03-06 07:12:18 -05:00
specctra_import_export Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
teardrop Teardrops: fix incorrect shape in some cases. 2023-02-20 09:06:21 +01:00
tools ADDED: board/library inspection for footprint differences. 2023-03-06 23:08:59 +00:00
widgets Fix typo in appearance_controls.cpp 2023-02-22 20:35:36 -05:00
CMakeLists.txt Disable link maps by default and fix compile issue with lld linker 2023-02-22 23:18:36 +00:00
Doxyfile_python
Doxyfile_xml
action_plugin.cpp More wxString wide literals. 2022-02-05 21:29:34 +00:00
action_plugin.h
array_creator.cpp array_creator: Transform item before adding, modify only the first one. 2022-11-19 04:07:35 +05:00
array_creator.h
array_pad_number_provider.cpp
array_pad_number_provider.h Fix typos in pcbnew sub-directory 2022-06-30 09:39:45 -04:00
board.cpp Cache for netclass pattern assignments. 2023-03-06 13:56:04 +00:00
board.h Move automatic dimension processing inside PCB_DIMENSION_BASE. 2023-03-05 15:19:06 +00:00
board_commit.cpp Coverity fixes and code cleaning. 2023-03-02 09:04:47 -05:00
board_commit.h Propagate nets within non-conflicting clusters immediately. 2023-01-23 16:25:29 +00:00
board_connected_item.cpp Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
board_connected_item.h 15% rendering optimization in PCB_TRACK::ViewGetLOD. 2023-01-27 18:37:43 +03:00
board_design_settings.cpp Move automatic dimension processing inside PCB_DIMENSION_BASE. 2023-03-05 15:19:06 +00:00
board_item.cpp AllCuMask() and AllTechMask() are static, they do NOT modify "this". 2023-02-03 15:08:31 +00:00
board_item_container.h Fix typos in pcbnew sub-directory 2022-06-30 09:39:45 -04:00
build_BOM_from_board.cpp Schematic: Add CSV export to Symbol Fields Table 2022-05-09 12:02:12 -04:00
cleanup_item.cpp Add pad-recombining to FPEditor's Cleanup Graphics. 2022-09-24 19:34:06 +01:00
cleanup_item.h Add pad-recombining to FPEditor's Cleanup Graphics. 2022-09-24 19:34:06 +01:00
collectors.cpp Attempt to fix std::initializer_list lifetime issue. 2022-08-21 20:54:41 +01:00
collectors.h Attempt to fix std::initializer_list lifetime issue. 2022-08-21 20:54:41 +01:00
convert_shape_list_to_polygon.cpp Fixes in build board outlines as polygon and convert_shape_list_to_polygon: 2023-02-28 16:45:03 +01:00
convert_shape_list_to_polygon.h Refactor poly outline generator to handle multiple outlines. 2022-10-14 20:32:04 +01:00
cross-probing.cpp PCM: auto reload global libs after dialog is run 2023-02-17 17:24:32 +00:00
edit.cpp PCB Editor: Add User Background Images 2022-07-14 11:23:23 +00:00
edit_track_width.cpp PCB Editor: prevent scroll wheel on track size opening board settings 2023-01-20 12:13:16 -05:00
edit_zone_helpers.cpp More safety around ratsnest state. 2022-11-30 13:00:21 +00:00
files.cpp Move to requiring explicit action to save project settings 2023-03-04 14:25:07 -05:00
footprint.cpp Treat dimensions in fp as text for bbox calculations 2023-02-18 13:04:12 +00:00
footprint.h ADDED: board/library inspection for footprint differences. 2023-03-06 23:08:59 +00:00
footprint_edit_frame.cpp Fix plugins in pcbnew breaking by opening fp editor 2023-02-23 14:20:03 +00:00
footprint_edit_frame.h Fp editor and Fp viewer: fix missing info on msg panel after loading a fp 2023-01-25 17:47:04 +01:00
footprint_editor_settings.cpp Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
footprint_editor_utils.cpp PCM: auto reload global libs after dialog is run 2023-02-17 17:24:32 +00:00
footprint_info_impl.cpp Catch IO_ERROR thrown in timestamp gen 2022-11-29 14:09:22 -08:00
footprint_info_impl.h ADDED: Threadpool 2022-06-24 22:59:24 +00:00
footprint_libraries_utils.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
footprint_preview_panel.cpp Move automatic dimension processing inside PCB_DIMENSION_BASE. 2023-03-05 15:19:06 +00:00
footprint_preview_panel.h Units for footprint preview widgets. 2023-01-02 22:12:26 +00:00
footprint_tree_pane.cpp Footprint Editor: Focus search field when window is first opened 2022-12-20 19:54:02 +00:00
footprint_tree_pane.h Footprint Editor: Focus search field when window is first opened 2022-12-20 19:54:02 +00:00
footprint_viewer_frame.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
footprint_viewer_frame.h Fp editor and Fp viewer: fix missing info on msg panel after loading a fp 2023-01-25 17:47:04 +01:00
footprint_wizard.cpp
footprint_wizard.h More wxString wide literals. 2022-02-05 21:29:34 +00:00
footprint_wizard_frame.cpp Fix static event table derived object definitions. 2023-01-28 14:10:06 -05:00
footprint_wizard_frame.h
footprint_wizard_frame_functions.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
fp_shape.cpp Add support for non-cardianlly-rotated text boxes. 2023-03-02 14:57:48 +00:00
fp_shape.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
fp_text.cpp Hide parent property in footprint editor 2023-02-17 20:40:09 -05:00
fp_text.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
fp_text_grid_table.cpp Add unit and eval support to WX_GRIDs. 2022-10-11 23:40:58 +01:00
fp_text_grid_table.h Add unit and eval support to WX_GRIDs. 2022-10-11 23:40:58 +01:00
fp_textbox.cpp Fix rotation/flipping properties for text boxes 2023-03-04 13:11:15 -05:00
fp_textbox.h Fix rotation/flipping properties for text boxes 2023-03-04 13:11:15 -05:00
fp_tree_model_adapter.cpp Add pin/unpin context menu to Symbol Chooser and Footprint Chooser. 2022-09-21 14:45:12 +01:00
fp_tree_model_adapter.h Add pin/unpin context menu to Symbol Chooser and Footprint Chooser. 2022-09-21 14:45:12 +01:00
fp_tree_synchronizing_adapter.cpp PCM: auto reload global libs after dialog is run 2023-02-17 17:24:32 +00:00
fp_tree_synchronizing_adapter.h PCM: auto reload global libs after dialog is run 2023-02-17 17:24:32 +00:00
generate_footprint_info.cpp Handle updated document description format 2022-04-15 11:17:01 -07:00
generate_footprint_info.h
graphics_cleaner.cpp GRAPHICS_CLEANER: fix bad detection of short Bezier curves that can be cleaned 2022-12-10 18:19:09 +01:00
graphics_cleaner.h Add pad-recombining to FPEditor's Cleanup Graphics. 2022-09-24 19:34:06 +01:00
grid_layer_box_helpers.cpp
grid_layer_box_helpers.h
initpcb.cpp Re-resolve netclasses after assigning netclass to pattern. 2022-11-22 14:54:08 +00:00
invoke_pcb_dialog.h
io_mgr.cpp Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
io_mgr.h Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
kicad_clipboard.cpp Don't leave temp footprints attached to a board. 2023-01-18 00:46:59 +00:00
kicad_clipboard.h Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
load_select_footprint.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
menubar_footprint_editor.cpp Add grid reset to place menubar. 2023-02-11 13:20:35 -05:00
menubar_pcb_editor.cpp ADDED: board/library inspection for footprint differences. 2023-03-06 23:08:59 +00:00
netinfo.h Expose shared_ptr to swig 2023-02-25 13:14:55 +00:00
netinfo_item.cpp Fix netnames. 2023-01-27 19:35:41 +03:00
netinfo_list.cpp Coverity fixes and code cleaning. 2023-03-02 09:04:47 -05:00
pad.cpp Remove superfluous Simplify() call 2023-02-22 16:24:26 -08:00
pad.h Special selection mode when in high-contrast with courtyard layer active. 2023-02-11 21:11:07 +00:00
pad_custom_shape_functions.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
pcb_base_edit_frame.cpp Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
pcb_base_edit_frame.h Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
pcb_base_frame.cpp Move automatic dimension processing inside PCB_DIMENSION_BASE. 2023-03-05 15:19:06 +00:00
pcb_bitmap.cpp Bitmaps are not actually copper 2023-02-23 14:16:28 -08:00
pcb_bitmap.h Fix handling of PPI when loading embedded images 2023-02-14 19:42:06 -05:00
pcb_dimension.cpp Move automatic dimension processing inside PCB_DIMENSION_BASE. 2023-03-05 15:19:06 +00:00
pcb_dimension.h Move automatic dimension processing inside PCB_DIMENSION_BASE. 2023-03-05 15:19:06 +00:00
pcb_draw_panel_gal.cpp Locked shadows should not be on overlay 2023-01-27 22:09:42 -05:00
pcb_draw_panel_gal.h
pcb_edit_frame.cpp Move to requiring explicit action to save project settings 2023-03-04 14:25:07 -05:00
pcb_edit_frame.h Move to requiring explicit action to save project settings 2023-03-04 14:25:07 -05:00
pcb_expr_evaluator.cpp Add support for unitless values to PCB_EXPR_EVALUATOR. 2022-11-29 14:24:20 +00:00
pcb_expr_evaluator.h Add support for unitless values to PCB_EXPR_EVALUATOR. 2022-11-29 14:24:20 +00:00
pcb_expr_functions.cpp PNS: Safety for evaluating item nets for rules 2023-02-17 19:56:02 -05:00
pcb_group.cpp Special selection mode when in high-contrast with courtyard layer active. 2023-02-11 21:11:07 +00:00
pcb_item_containers.h
pcb_layer_box_selector.cpp Improve HiDPI handling of appearance/layer controls 2023-02-22 09:20:36 -05:00
pcb_layer_box_selector.h
pcb_marker.cpp Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
pcb_marker.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
pcb_origin_transforms.cpp Remove bad static_cast. 2022-07-24 23:41:41 +01:00
pcb_origin_transforms.h
pcb_painter.cpp Add Property Inspector support for dimension objects. 2023-03-04 23:16:46 +00:00
pcb_painter.h Dim other pads when in pad edit mode. 2023-01-06 11:13:57 +00:00
pcb_plot_params.cpp Avoid duplicating similar options in print and plot headers 2022-11-12 16:02:24 +01:00
pcb_plot_params.h Avoid duplicating similar options in print and plot headers 2022-11-12 16:02:24 +01:00
pcb_plot_params_parser.h Pcbnew: add plot on all layers feature. 2022-04-02 14:33:40 -04:00
pcb_plot_svg.cpp Fix compile warning 2023-01-25 13:53:13 -08:00
pcb_plot_svg.h Hotglue footprint to svg export 2022-12-13 22:50:15 -05:00
pcb_screen.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
pcb_shape.cpp Fix some PCB_SHAPE properties 2023-02-23 20:23:44 -05:00
pcb_shape.h Add support for non-cardianlly-rotated text boxes. 2023-03-02 14:57:48 +00:00
pcb_target.cpp Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
pcb_target.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
pcb_text.cpp Add Property Inspector support for dimension objects. 2023-03-04 23:16:46 +00:00
pcb_text.h Add Property Inspector support for dimension objects. 2023-03-04 23:16:46 +00:00
pcb_textbox.cpp Fix rotation/flipping properties for text boxes 2023-03-04 13:11:15 -05:00
pcb_textbox.h Fix rotation/flipping properties for text boxes 2023-03-04 13:11:15 -05:00
pcb_track.cpp Coverity fixes and code cleaning. 2023-03-06 07:12:18 -05:00
pcb_track.h Coverity fixes and code cleaning. 2023-03-06 07:12:18 -05:00
pcb_view.cpp
pcb_view.h
pcbnew.cpp PCM: auto reload global libs after dialog is run 2023-02-17 17:24:32 +00:00
pcbnew.h Remove convert_to_biu.h, merge contents to base_units.h 2022-09-16 21:09:28 -04:00
pcbnew.icns
pcbnew_config.cpp Move to requiring explicit action to save project settings 2023-03-04 14:25:07 -05:00
pcbnew_config.h
pcbnew_doc.icns
pcbnew_id.h Footprint viewers: fix regression: re-add automatic zoom option when loading a new footprint 2022-04-18 11:15:14 +02:00
pcbnew_jobs_handler.cpp Step exporter fixes and enhancements: 2023-03-05 12:55:15 +01:00
pcbnew_jobs_handler.h Hotglue footprint to svg export 2022-12-13 22:50:15 -05:00
pcbnew_printout.cpp Print hole walls if in colour (and printing real drill sizes). 2022-11-13 13:18:42 +00:00
pcbnew_printout.h PCBNEW_PRINTOUT: fix incorrect size of holes printed with the "small drill" option 2022-11-12 16:02:24 +01:00
pcbnew_settings.cpp Disable auto-refill zones 2023-02-22 20:13:55 -05:00
pcbnew_settings.h ADDED: user-specified gap and linewidth for bounding hull creation. 2023-02-12 23:16:45 +00:00
pcbplot.cpp Allow plotting of multiple board layers per plot in Python. 2023-02-14 09:49:20 -05:00
pcbplot.h Property popups for symbols, labels, sheets, and footprints in PDF. 2022-09-06 13:59:52 +01:00
plot_board_layers.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
plot_brditems_plotter.cpp Add Property Inspector support for dimension objects. 2023-03-04 23:16:46 +00:00
plotcontroller.h Allow plotting of multiple board layers per plot in Python. 2023-02-14 09:49:20 -05:00
plotprint_opts.h Avoid duplicating similar options in print and plot headers 2022-11-12 16:02:24 +01:00
plugin.cpp Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
sel_layer.cpp More wxString wide literals. 2022-02-05 21:29:34 +00:00
toolbars_footprint_editor.cpp Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
toolbars_footprint_viewer.cpp Never call ReCreateMenuBar inside a menu event handler 2022-12-16 16:37:51 -05:00
toolbars_pcb_editor.cpp Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
tracks_cleaner.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
tracks_cleaner.h Performance enhancements for Cleanup Tracks & Vias.Performance enhancements for Cleanup Tracks & Vias.Performance enhancements for Cleanup Tracks & Vias.Performance enhancements for Cleanup Tracks & Vias.Performance enhancements for Cleanup Tracks & Vias.Performance enhancements for Cleanup Tracks & Vias.Performance enhancements for Cleanup Tracks & Vias.Performance enhancements for Cleanup Tracks & Vias.Performance enhancements for Cleanup Tracks & Vias. 2022-03-18 11:04:53 +00:00
undo_redo.cpp Clear caches before undo operation. 2022-12-02 10:59:48 +00:00
zone.cpp Handle excessively large values when hatching 2023-02-23 14:40:57 -08:00
zone.h Special selection mode when in high-contrast with courtyard layer active. 2023-02-11 21:11:07 +00:00
zone_filler.cpp Allow shorting copper zones through negative clearance 2023-02-24 20:36:39 -05:00
zone_filler.h Fix an edge-case in the spoke genration logic for non-cardinal spokes. 2022-10-01 19:31:47 +01:00
zone_settings.cpp Zones: use metric defaults and limits instead of mixed units 2023-02-11 07:39:29 -05:00
zone_settings.h Set new zone priority to unique number 2022-08-24 16:37:57 -07:00
zones.h Zones: use metric defaults and limits instead of mixed units 2023-02-11 07:39:29 -05:00
zones_functions_for_undo_redo.cpp More tightening of group parent lifecycles. 2022-11-16 00:42:38 +00:00
zones_functions_for_undo_redo.h Formatting and a bit of cleanup. 2022-10-21 18:41:39 +01:00