kicad/pcbnew
Seth Hillbrand e291576c38 plotting: When aggregating areas, heal first
The fracture routine introduces degenerate points that are healed by the
Clipper Polygon simplify command.  This is normally fine but in the case
of hatched areas, there are thousands of degenerate points, which is
very slow in Clipper.  Healing the degenerate points first before
simplifying and fracturing is much faster.

Fixes: lp:1847764
* https://bugs.launchpad.net/kicad/+bug/1847764
2019-10-12 20:14:57 -07:00
..
autorouter Cleaning code: remove dead code in spread_footprints.cpp. 2019-08-10 20:29:54 +02:00
board_stackup_manager board stackup manager: a few enhancements in code and make some strings translatable 2019-09-27 17:12:24 +02:00
connectivity Some performance enhancements contributed by Oleg Endo. 2019-10-04 19:41:40 +01:00
dialogs Gencad export: fix an issue in hash_eda calculation, that can generate the same hash for 2 different footprints. 2019-10-10 20:18:48 +02:00
drc A bit of cleanup of stale DRC code. 2019-06-04 13:56:54 +01:00
exporters Gerber job file Fix incorrect .gbrjob file format when the board stackup is not yet initialized. 2019-10-10 21:16:45 +02:00
github Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
import_gfx pcbnew: Clean up extension handling in graphics plugins 2019-10-04 15:43:29 -04:00
microwave pcbnew: Remove the last dlist from modules/pcbnew 2019-06-01 20:55:32 -07:00
pcad2kicadpcb_plugin Cleanup. 2019-06-17 22:15:20 +01:00
python Python fp wizards: fix a few issues in qrcode_footprint_wizard.py 2019-05-13 13:04:57 +02:00
router pcbnew: Snap during routing needs active parent 2019-10-11 09:16:26 -07:00
specctra_import_export Save last-used-paths in export dialogs. 2019-08-02 21:03:48 -06:00
swig pcbnew/swig/pcbnew_action_plugins.cpp: fix crash due to broken detection of deleted items after running a script. 2019-09-23 14:07:45 +02:00
tools pcbnew: Remove snapping to hidden items 2019-10-10 09:37:25 -07:00
CMakeLists.txt Stackup manager: Add a dielectric manager to handle more easily user defined dielectric substrates 2019-09-12 10:37:05 +02:00
Doxyfile_python Doxyfiles: Remove local debug lines 2019-02-13 17:22:07 -08:00
Doxyfile_xml Doxyfiles: Remove local debug lines 2019-02-13 17:22:07 -08:00
Info.plist.in Set KiCad version in MacOS apps 2019-06-12 04:40:03 -07:00
action_plugin.cpp pcbnew: Add toolbar buttons for action plugins 2018-08-26 19:39:27 -07:00
action_plugin.h pcbnew: Add toolbar buttons for action plugins 2018-08-26 19:39:27 -07:00
array_creator.cpp Fix broken build in array_creator 2019-06-01 16:30:58 -04:00
array_creator.h Move hotkeys to ACTION architecture. 2019-06-10 23:46:00 +01:00
array_pad_name_provider.cpp pcbnew: Move pads to std::deque 2019-06-01 16:23:54 -07:00
array_pad_name_provider.h Pcbnew: arrays skip existing names 2019-01-30 15:41:35 -08:00
board_commit.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
board_commit.h Insert EE_TOOL_BASE under SchEdit and LibEdit tools, and fix errant rename scope which clobbered PCBNew's PICKER_TOOL. 2019-05-12 13:47:08 +01:00
board_connected_item.cpp Remove pads not on copper layers (just on tech layers) from connectivity calculation. 2019-07-25 13:08:41 +02:00
board_connected_item.h Remove pads not on copper layers (just on tech layers) from connectivity calculation. 2019-07-25 13:08:41 +02:00
board_design_settings.cpp Default keep upright to false in design settings. 2019-10-02 10:56:13 +01:00
board_item_container.h Improve SNR (and spelling). 2019-08-20 18:02:28 +01:00
board_items_to_polygon_shape_transform.cpp Performance enhancement for pad drawing. 2019-09-09 13:45:06 +01:00
board_netlist_updater.cpp Add option to keep 3DModel info when exchanging footprints. 2019-08-25 22:49:36 +01:00
board_netlist_updater.h Remove dead code 2019-08-11 14:22:58 +02:00
build_BOM_from_board.cpp Moving modules from DLIST to std::deque 2019-06-01 09:53:23 -07:00
class_board.cpp Python scripting: fix a crash with some pythons scripts calling BOARD::ComputeBoundingBox() 2019-10-05 10:39:33 +02:00
class_board.h Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_board_item.cpp pcbnew: Fix STL blunder when deleting 2019-06-11 10:12:00 -07:00
class_dimension.cpp Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_dimension.h Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_drawsegment.cpp Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_drawsegment.h Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_edge_mod.cpp Flip Start0 etc. when in ModEdit. 2019-10-01 11:02:52 +01:00
class_edge_mod.h Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_marker_pcb.cpp Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_marker_pcb.h Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_module.cpp Gerbview: fix missing grid initialization at starting. 2019-10-03 18:33:16 +02:00
class_module.h Minor fix and enhancement code. 2019-09-15 11:10:53 +02:00
class_pad.cpp Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_pad.h Pad properties dialog needs to edit the local value, not the resultant value. 2019-08-05 21:38:28 -06:00
class_pcb_target.cpp Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_pcb_target.h Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_pcb_text.cpp Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_pcb_text.h Push some search stuff down into EDA_DRAW_FRAME so it can be shared. 2019-07-26 17:53:32 -06:00
class_text_mod.cpp Make m_Text private so we don't keep getting bugs where m_shown_text fails to get updated. 2019-08-01 20:36:59 -06:00
class_text_mod.h Push some search stuff down into EDA_DRAW_FRAME so it can be shared. 2019-07-26 17:53:32 -06:00
class_track.cpp Add preference for flip axis. 2019-07-14 10:36:48 +01:00
class_track.h Remove pads not on copper layers (just on tech layers) from connectivity calculation. 2019-07-25 13:08:41 +02:00
class_zone.cpp pcbnew: Copy hatch zone settings when duplicate 2019-09-05 09:42:24 -07:00
class_zone.h Don't attempt colinear corner optimization when zones of different nets overlap. 2019-07-28 10:32:15 -06:00
collectors.cpp Fix some misplaced parens. 2019-06-26 21:54:04 +01:00
collectors.h Fix a bug introduced when UseGalCanvas() no longer switches. 2019-05-27 18:47:20 +01:00
convert_drawsegment_list_to_polygon.cpp Moving further arc approximations down 2019-05-22 14:35:17 -07:00
cross-probing.cpp Fix re-entrancy problem in cross-probing. 2019-07-17 21:35:28 +01:00
drc_item.cpp Move DRC control to a tool; move assorted commands to ACTIONS. 2019-06-03 21:08:30 +01:00
eagle_plugin.cpp Pcbnew: fix Eagle footprint library polygon pad sizes. 2019-09-12 07:35:48 -04:00
eagle_plugin.h Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
edit.cpp Immediate actions for PlEditor, PcbNew, etc. 2019-06-25 11:34:28 +01:00
edit_track_width.cpp Move DRC control to a tool; move assorted commands to ACTIONS. 2019-06-03 21:08:30 +01:00
files.cpp Default keep upright to false in design settings. 2019-10-02 10:56:13 +01:00
footprint_edit_frame.cpp Pcbnew: avoid crash when closing pcbnew if the DRC dialog is open. 2019-09-19 09:16:12 +02:00
footprint_edit_frame.h Improve zoom-to-extents for footprints with long text. 2019-09-05 21:02:29 +01:00
footprint_editor_options.cpp Retire EDA_DRAW_PANEL and legacy_wx/EDA_DRAW_FRAME. 2019-05-31 21:55:30 +01:00
footprint_editor_utils.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
footprint_info_impl.cpp Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
footprint_info_impl.h Use binary search on Footprint Info list. 2018-08-04 10:29:17 +01:00
footprint_libraries_utils.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
footprint_preview_panel.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
footprint_preview_panel.h Pcbnew: FOOTPRINT_PREVIEW_PANEL passes reference to local 2019-04-11 17:01:23 +01:00
footprint_tree_pane.cpp Grid rid of GetCanvas/GetGalCanvas distinction now that there's only gal. 2019-06-13 19:58:37 +01:00
footprint_tree_pane.h Convert Footprint Editor to component tree. 2018-08-01 09:35:46 +01:00
footprint_viewer_frame.cpp Bail on our custom dockart provider. 2019-09-06 23:38:20 +01:00
footprint_viewer_frame.h Fix minor compil warnings 2019-08-18 09:13:55 +02:00
footprint_wizard.cpp
footprint_wizard.h
footprint_wizard_frame.cpp Bail on our custom dockart provider. 2019-09-06 23:38:20 +01:00
footprint_wizard_frame.h Cleanup some left-over vestiages of the legacy canvas architecture. 2019-06-13 15:51:32 +01:00
footprint_wizard_frame_functions.cpp Grid rid of GetCanvas/GetGalCanvas distinction now that there's only gal. 2019-06-13 19:58:37 +01:00
fp_tree_model_adapter.cpp Return control of Symbol and Footprint chooser col widths to user. 2019-08-26 18:27:49 +01:00
fp_tree_model_adapter.h Return control of Symbol and Footprint chooser col widths to user. 2019-08-26 18:27:49 +01:00
fp_tree_synchronizing_adapter.cpp Update description in footprint tree when it's edited. 2019-09-04 17:19:25 +01:00
fp_tree_synchronizing_adapter.h Move footprint & symbol tree context menus to tool infrastructure. 2019-06-05 20:16:48 +01:00
generate_footprint_info.cpp More performance enhancements. 2018-08-06 13:49:27 +01:00
generate_footprint_info.h Convert Place Footprint to component tree. 2018-08-01 09:35:45 +01:00
gpcb_plugin.cpp Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
gpcb_plugin.h Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
grid_layer_box_helpers.cpp Fix a few coverity errors 2019-02-16 14:09:21 +01:00
grid_layer_box_helpers.h In-place editing for footprint TEXTE_MODULEs. 2018-07-17 15:11:04 +01:00
help_common_strings.h Fix occurrences of "edition" which should be "editing" 2018-07-17 15:12:39 +01:00
initpcb.cpp Re-implement sch->pcb cross-probing using net highlighting architecture. 2019-06-26 21:54:03 +01:00
invoke_pcb_dialog.h Clean up some dangling legacy odds and ends. 2019-06-01 01:17:46 +01:00
io_mgr.cpp pcbnew: Prevent GITHUB plugin from being registered 2019-01-15 12:14:02 -08:00
io_mgr.h Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
kicad_clipboard.cpp Honor the {0, 0} reference on the clipboard. 2019-08-20 19:57:36 +01:00
kicad_clipboard.h Move hotkeys to ACTION architecture. 2019-06-10 23:46:00 +01:00
kicad_netlist_reader.cpp Be more careful about EOF processing when reading netlist. 2019-10-07 12:53:32 +01:00
kicad_plugin.cpp pcbnew: properly close tags when handling bad poly 2019-09-21 09:27:01 -07:00
kicad_plugin.h Pcbnew: update SEXPR_BOARD_FILE_VERSION to 20190905 (actual commit date for board physical stackup feature) 2019-09-05 20:15:30 +02:00
layer_widget.cpp pcbnew: Add ability to reset layer/item colors to defaults 2019-08-26 09:20:08 -04:00
layer_widget.h pcbnew: Add ability to reset layer/item colors to defaults 2019-08-26 09:20:08 -04:00
legacy_netlist_reader.cpp
legacy_plugin.cpp Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
legacy_plugin.h Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
load_select_footprint.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
menubar_footprint_editor.cpp Enable Save As for footprints with no current library. 2019-08-23 10:56:46 +01:00
menubar_pcb_editor.cpp Unify menu item creation for closing a window 2019-08-14 09:35:15 +01:00
microwave.cpp Cleanup. 2019-07-02 00:48:05 +01:00
netclass.cpp units: Move common units and add tests 2019-01-08 09:29:32 -08:00
netclass.h Consolidate design rules UI. 2018-07-17 15:12:34 +01:00
netinfo.h Performance enhancements to zone filling & track DRC. 2019-06-25 11:34:28 +01:00
netinfo_item.cpp pcbnew: Move tracks to std::deque 2019-06-01 09:53:23 -07:00
netinfo_list.cpp pcbnew: Move pads to std::deque 2019-06-01 16:23:54 -07:00
netlist.cpp Cleaning code: remove dead code in spread_footprints.cpp. 2019-08-10 20:29:54 +02:00
netlist_reader.cpp A few I18n minor fixes. 2019-08-04 10:33:54 +02:00
netlist_reader.h
pad_custom_shape_functions.cpp Performance enhancement for pad drawing. 2019-09-09 13:45:06 +01:00
pad_naming.cpp Pcbnew: Array tool should not number NPTHs 2019-01-06 07:55:49 -08:00
pad_naming.h Pcbnew: Array tool should not number NPTHs 2019-01-06 07:55:49 -08:00
pad_print_functions.cpp Retire EDA_DRAW_PANEL and legacy_wx/EDA_DRAW_FRAME. 2019-05-31 21:55:30 +01:00
pcb_base_edit_frame.cpp pcbnew: Clear view prior to terminating 2019-09-24 11:44:33 -07:00
pcb_base_edit_frame.h Fix grid update when edited from menubar. 2019-06-19 18:35:17 +01:00
pcb_base_frame.cpp Improve zoom-to-extents for footprints with long text. 2019-09-05 21:02:29 +01:00
pcb_display_options.cpp pcbnew: Add option to show ratsnest while moving 2019-06-12 17:36:02 -07:00
pcb_draw_panel_gal.cpp Put selected layer in front of DRC markers. 2019-08-03 17:20:54 -06:00
pcb_draw_panel_gal.h Grid rid of GetCanvas/GetGalCanvas distinction now that there's only gal. 2019-06-13 19:58:37 +01:00
pcb_edit_frame.cpp Cleanup position handling for TOOL_EVENTs 2019-10-03 19:04:33 +01:00
pcb_edit_frame.h Add option to keep 3DModel info when exchanging footprints. 2019-08-25 22:49:36 +01:00
pcb_general_settings.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
pcb_general_settings.h Implement preference for immediate actions. 2019-07-25 20:41:22 -06:00
pcb_layer_box_selector.cpp Move hotkeys to ACTION architecture. 2019-06-10 23:46:00 +01:00
pcb_layer_box_selector.h Move hotkeys to ACTION architecture. 2019-06-10 23:46:00 +01:00
pcb_layer_widget.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
pcb_layer_widget.h Remove more legacy editing code. 2019-05-27 18:47:20 +01:00
pcb_legacy_draw_utils.cpp pcbnew: Move pads to std::deque 2019-06-01 16:23:54 -07:00
pcb_netlist.cpp Escape slashes in labels and netnames. 2019-04-07 00:24:10 +01:00
pcb_netlist.h
pcb_painter.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
pcb_painter.h pcbnew: Add option to show ratsnest while moving 2019-06-12 17:36:02 -07:00
pcb_parser.cpp Pcbnew: add a board layer stack manager 2019-09-05 18:51:18 +02:00
pcb_parser.h Pcbnew: add a board layer stack manager 2019-09-05 18:51:18 +02:00
pcb_plot_params.cpp Pcbnew: add a board layer stack manager 2019-09-05 18:51:18 +02:00
pcb_plot_params.h pcbnew: Clean up warnings with unit handling in the DXF export 2019-07-10 12:21:01 -04:00
pcb_plot_params_parser.h hpgl plot parameters: use double instead of int to store the pen diameter to avoid truncation. 2018-05-26 09:37:42 +02:00
pcb_screen.cpp Remove some more legacy code. 2019-05-29 00:26:29 +01:00
pcb_view.cpp fix incorrect initialization of VIEW::m_boundary. 2018-11-18 20:04:17 +01:00
pcb_view.h
pcbnew.cpp Python scripting: fix a crash with some pythons scripts calling BOARD::ComputeBoundingBox() 2019-10-05 10:39:33 +02:00
pcbnew.h pcbnew: Remove the last dlist from modules/pcbnew 2019-06-01 20:55:32 -07:00
pcbnew.icns
pcbnew.rc
pcbnew_config.cpp Default keep upright to false in design settings. 2019-10-02 10:56:13 +01:00
pcbnew_config.h
pcbnew_doc.icns
pcbnew_id.h Add filters to footprint viewer. 2019-08-14 21:51:26 +01:00
pcbnew_printout.cpp Disable zone outlines and hatched lines rendering in printouts 2018-10-31 19:17:30 +01:00
pcbnew_printout.h Disable zone outlines and hatched lines rendering in printouts 2018-10-31 19:17:30 +01:00
pcbplot.cpp Plot filenames automatically generated: change the point ('.') find in layer names to '_' 2019-01-05 12:44:38 +01:00
pcbplot.h Implement preserved-corners to prevent divots when filling adjacent zones. 2019-07-14 18:18:48 +01:00
plot_board_layers.cpp plotting: When aggregating areas, heal first 2019-10-12 20:14:57 -07:00
plot_brditems_plotter.cpp Gerber file generation: fix incorrect aperFunction attribute for graphic items on edge cut layer. 2019-10-09 15:46:35 +02:00
plotcontroller.h
plugin.cpp Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
ratsnest.cpp pcbnew: Move tracks to std::deque 2019-06-01 09:53:23 -07:00
ratsnest_data.cpp pcbnew: Separating connectivity to subdir 2018-10-12 16:31:09 -07:00
ratsnest_data.h pcbnew: Separating connectivity to subdir 2018-10-12 16:31:09 -07:00
ratsnest_viewitem.cpp pcbnew: Draw dynamic ratsnest with curved lines 2019-06-15 08:17:28 -07:00
ratsnest_viewitem.h Implement undo for Page Settings in PlEditor, Eeschema and PCBNew. 2019-05-27 11:58:55 +01:00
sel_layer.cpp Try to fix UI issues in select layer pair dialog and slect layer dialog. 2019-07-28 12:54:59 +02:00
text_mod_grid_table.cpp Re-enable text layers now that DRC & zone fills are fixed. 2018-08-24 10:56:13 +01:00
text_mod_grid_table.h Consolidate design rules UI. 2018-07-17 15:12:34 +01:00
toolbars_footprint_editor.cpp Refactor deleteTool ACTION removing duplicates 2019-08-12 13:49:55 -04:00
toolbars_footprint_viewer.cpp Add filters to footprint viewer. 2019-08-14 21:51:26 +01:00
toolbars_pcb_editor.cpp Refactor deleteTool ACTION removing duplicates 2019-08-12 13:49:55 -04:00
tracks_cleaner.cpp Improve readability of flag checking. 2019-08-27 19:23:07 +01:00
tracks_cleaner.h TRACKS_CLEANER algo to merge collinear track segments: some minor fixes. 2019-06-29 09:12:19 +02:00
undo_redo.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
zone_filler.cpp Pcbnew, zone filler: Ensure hatch pattern thickness bigger than zone minimal width (one micron bigger). 2019-10-12 11:12:27 +02:00
zone_filler.h A better hack for the post-ProgressReporter-loss-of-focus issue. 2019-07-14 18:18:48 +01:00
zone_settings.cpp pcbnew: Remove segment count from board file 2019-05-24 21:13:53 -07:00
zone_settings.h pcbnew: Remove segment count from board file 2019-05-24 21:13:53 -07:00
zones.h UNIT_BINDERize zone dialogs. 2018-07-17 15:11:32 +01:00
zones_by_polygon.cpp A better hack for the post-ProgressReporter-loss-of-focus issue. 2019-07-14 18:18:48 +01:00
zones_functions_for_undo_redo.cpp Retire EDA_DRAW_PANEL and legacy_wx/EDA_DRAW_FRAME. 2019-05-31 21:55:30 +01:00
zones_functions_for_undo_redo.h Fix occurrences of "edition" which should be "editing" 2018-07-17 15:12:39 +01:00
zones_test_and_combine_areas.cpp Move DRC control to a tool; move assorted commands to ACTIONS. 2019-06-03 21:08:30 +01:00