Replicate Layouts is a very fine tool, and the new built-in Multichannel Layout feature is a great addition.
But more often I find myself wishing I could replicate a much smaller chunk of layout work. Is there a more lightweight replication tool that allows you do some layout and then apply it to some other footprints, without needing to set up hierarchical sheets or component classes?
Basically the old copy-paste-update-by-designators workflow, but without the update by designators bit!
I put together a proof of concept using the outgoing SWIG interface, and it seems eminently achievable. It’s hard to imagine I’ve created something novel here. Is there prior work I can draw from or contribute to?
In this screen capture I’ve laid out J4 the way I want it - moved the Ref Des, made the Value visible, moved it to the silkscreen layer, embiggened it and positioned everything just so. I then do the following:
- switch to the Shell and run my newly-created
get_selected_footprint_properties()function. - select
J3and run my newly-createdapply_footprint_properties()function. - bring pcbnew into focus to reveal the replication has worked.
- select
J2and do the same.
There was a bit of mucking around to get offsets and layers and relevant fields and whatnot, but this now seems readily expandible to the work I’ve done to layout C17, R14 and R19 and other characteristics of layout too.