Rotate multiple footprints in place

I’m searching an efficient way to rotate a few footprints at one shot. For example, I have 25 LEDs in horizontal arrangements. I’d like to rotate each one of them by 90 deg. E.g. as below, I finished the first 4 LEDs, and I have 21 LEDs to go. I have been doing “selection —> R” for each footprint individually.

I wonder if I can select all of them and somehow “rotate in place”. I tried to use “move item” function for the 20 LEDs in the bottom 4 rows,

but those LEDs rotated as a whole rather than individually. See below:


Any suggestions on how to do “rotate in place” more efficiently, please? Thanks.

Selection is not needed.
I just point footprint with the mouse and press ‘R’. It is very fast.

Thanks. I do know that selection is not quite needed. I did the selection to avoid rotating part of the footprint, such as the reference text or pad.

In footprints I have ‘Lock pads’ selected. Didn’t have to do that. It is by default, I think. So ‘R’ doesn’t try to rotate pads.
I work with References and Values hidden (Layers Manager - Items) so ‘R’ doesn’t try to rotate them.
Having them hidden helps a lot. Much more then seeing them.

Thanks.

My original question is still not solved. And I’d like to hear people’s other suggestions.

I think the only other recourse is scripting. Something like this (untested but should be pretty close to working)

b = pcbnew.GetBoard()
for m in b.GetModules():
  if m.GetReference() == 'D58':
    m.SetAngle(900) # angle units are .1 degrees
pcbnew.Refresh()
1 Like

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