fb565caf7bd2877ef34755cfa2d6fe048e4a577c
This modifies that logic for optimizing pad connections.
1) Custom pads now prefer the connections to their longer side. This is
particularly important to match the behavior in a rectangular pad
2) Costs for straight lines are non-zero. This favors fewer connections
3) Custom pad breakouts are at the polygon boundary rather than offset
by 0.1mm. This also matches the circular and rectangular paradigm.
4) Line Heads contained in the pad itself are not optimized. This
prevents escaping the pad unnecessarily
Fixes: lp:1824182
* https://bugs.launchpad.net/kicad/+bug/1824182
(cherry picked from commit 06cb21cc47)
KiCad README ============ For specific documentation like Compiling, GUI translation, old changelogs see the Documentation subfolder. Files ----- AUTHORS.txt - The authors, contributors, document writers and translators list CMakeList.txt - Main CMAKE build tool script copyright.h - A very short copy of the GNU General Public License to be included in new source files CTestConfig.cmake - Support for CTest and CDash testing tools Doxyfile - Doxygen config file for KiCad INSTALL.txt - The release (binary) installation instructions TODO.txt - Todo list (looks outdated) uncrustify.cfg - Uncrustify config file for uncrustify sources formatting tool _clang-format - clang config file for clang-format sources formatting tool Subdirectories -------------- 3d-viewer - Sourcecode of the 3D viewer bitmap2component - Sourcecode of the bitmap to pcb artwork converter bitmaps_png - Menu and program icons CMakeModules - Modules for the CMAKE build tool common - Sourcecode of the common library cvpcb - Sourcecode of the CvPCB tool demos - Some demo examples Documentation - Developer documentation. Old changelogs etcetera. eeschema - Sourcecode of the schematic editor gerbview - Sourcecode of the gerber viewer helpers - Helper tools and utilities for development include - Interfaces to the common library kicad - Sourcecode of the project manager lib_dxf - Sourcecode of the dxf reader/writer library new - Staging area for the new schematic library format pagelayout_editor - Sourcecode of the pagelayout editor patches - Collection of patches for external dependencies pcbnew - Sourcecode of the printed circuit board editor plugins - Sourcecode of the new plugin concept polygon - Sourcecode of the polygon library potrace - Sourcecode of the potrace library, used in bitmap2component qa - Testcases using the python interface resources - Resources for freedesktop mime-types for linux scripting - SWIG Python scripting definitions and build scripts scripts - Example scripts for distribution with KiCad template - Project and pagelayout templates tools - Other miscellaneous helpers for testing utils - Small utils for kicad, e.g. IDF tools
Languages
C++
51%
C
26.1%
ALGOL
20.1%
AGS Script
1.3%
CMake
0.6%
Other
0.6%