Move without aligning footprint/drawing anchor point with mouse cursor (move relative to cursor)?

OK, so if I have a module or drawing, and I want to move it with “M” keyboard shortcut in Pcbnew - however, when I do that (first select the component, then hit “M”), Pcbnew starts by moving the component, so its anchor point aligns with the current position of mouse pointer - the gif below shows behavior in OpenGL Canvas, when you hit M and go into what I’d call “Move mode”:

This mostly bothers me (though not always), both when I want to move with the mouse, and especially when I want to use the keyboard arrow keys to nudge (you have to be in Move mode for keyboard nudging to work) - and especially when I have zoomed in to a single pad ( so when I press M, the pad disappears :slight_smile: )

So, is there a way to initiate Move mode - but in such a way, that the footprint/drawing is not moved so its anchor point aligns with the mouse pointer? That means that the move would be “relative” - move starts, mouse pointer starting position is recorded, and so is footprint starting position, and both remain in place at start; then, if mouse moves 5 px up relative to mouse pointer starting position - also the footprint is moved 5 px up, but relative to footprint starting position.

Kicad version:

Application: kicad
Version: (2017-11-13 revision d98fc85)-master, release build
    wxWidgets 3.0.2
    libcurl/7.35.0 OpenSSL/1.0.1f zlib/1.2.8 libidn/1.28 librtmp/2.3
Platform: Linux 4.4.0-116-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.0.2 (wchar_t,wx containers,compatible with 2.8) GTK+ 2.24
    Boost: 1.54.0
    Curl: 7.35.0
    Compiler: GCC 4.8.4 with C++ ABI 1002

Build settings:

What is your kicad version? What canvas are you using? What is the grid setting?

1 Like

Thanks @Rene_Poschl :

I just updated the OP with the kicad version; the OP already stated:

the gif below shows behavior in OpenGL Canvas:

… and as I can see on the gif, the grid setting is 0.2540 mm (10 mils)

In the build here
(Version: (5.0.0-rc2-dev-44-gde6b32d23), release build
it looks like the move snaps pick point to the pad nearest the cursor, provided the cursor is within a pad at the time.
If not, it snaps to part origin. Quite smart really.

You can also always enter relative movements straight into the ‘E’ button XY locations, as simple expressions, and KiCad is units aware here too… nifty.
if X shows 174.2705mm edit to 174.2705+5mil nudges 5 mils. 174.2705+0.05 nudges .05mm

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.