Enhanced Zoom options
KiCad leaves an empty 10% margin of space when it performs the "Zoom to Fit" function in Pcbnew and Eeschema. Also, in Eeschema, the "Zoom to Fit" function uses a bounding box of the page border, which combined with the 10% margin, leaves the drawing quite small. It would help to have the margins be settable via the GUI, and to also have a "Zoom to Items" function in Eeschema.
Description
When you invoke the "Zoom to Fit" function, KiCad leaves a margin of empty space around what it draws. I find that the first thing I do after a "Zoom to Fit" is to zoom in a bit more. The margin is a hardcoded value of 10% for most programs. It would be helpful if the margin was user settable via the GUI for Pcbnew and Eeschema.
The situation in Eeschema is exacerbated by the fact that it uses a bounding box of the page border and then adds 10% to that. It would be helpful if Eeschema also provided a "Zoom to Items" function that would find the bounding box of all items except the page border and then zoom in to that. The "Zoom to Items" function should also have a margin that can be set by the user in the GUI.
I have pushed a Merge Request for this: !336 (merged)
Steps to reproduce
- Load a drawing in Eeschema and hit the "Home" key to perform a "Zoom to Fit"
- Notice how it draws the entire page and adds a border of empty space around it.
- Do the same thing in Pcbnew and notice that while "Zoom to Fit" doesn't include the page border here, it still has a 10% empty border around the PCB.
This is what the normal "Zoom to Fit" looks like in Eeschema:
This is what "Zoom to Items" would do:
KiCad Version
Applies to v6 in general
Application: Eeschema
Version: (5.99.0-2592-g81adcd1c4-dirty), debug build
Libraries:
wxWidgets 3.0.5
libcurl/7.70.0 OpenSSL/1.1.1g (Schannel) zlib/1.2.11 brotli/1.0.7 libidn2/2.3.0 libpsl/0.21.0 (+libidn2/2.3.0) libssh2/1.9.0 nghttp2/1.40.0
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
Date: Aug 9 2020 17:21:27
wxWidgets: 3.0.5 (wchar_t,wx containers,compatible with 2.8)
Boost: 1.73.0
OCE: 6.9.1
Curl: 7.70.0
Compiler: GCC 10.2.0 with C++ ABI 1014
Build settings:
KICAD_SCRIPTING=OFF
KICAD_SCRIPTING_MODULES=OFF
KICAD_SCRIPTING_PYTHON3=OFF
KICAD_SCRIPTING_WXPYTHON=OFF
KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
KICAD_SCRIPTING_ACTION_MENU=OFF
BUILD_GITHUB_PLUGIN=OFF
KICAD_USE_OCE=ON
KICAD_SPICE=OFF
KICAD_STDLIB_DEBUG=OFF
KICAD_STDLIB_LIGHT_DEBUG=OFF
KICAD_SANITIZE=OFF