Feature request - Match Properties command

In AutoCad one of the most useful commands is the “Match Properties” command.
Basically, if you have a bunch of different lines, text with different fonts etc or other entities and you wanted to make them all the same then you can do so very easily.

So the way it would work in KiCad would be as follows:-

Let’s say you have a bunch of tracks on a pcb, all different widths and you wanted them all the same then you click on the Match Properties button, click on a track with your source width and from then on if you just single left click any tracks at random and they all inherit the source width as you click them. Pressing ESC to end the command at any time.
Not just tracks but you could do the same with via’s, text etc.

It’s much faster and beats multi-selecting a bunch of tracks at once then right clicking Properties.

Ian.
[new to KiCad]

Not quite the same, but try EditEdit Text & Graphics Properties… (works in schematic and pcb; pcb also has a similar “Edit Track & Via Properties” tool.)

It lets you batch edit many properties of text & graphics, optionally working on your selection. There are a number of other filtering options as well.

In future versions (v7?) there will be a “properties inspector” tool that should let you batch-edit any selected items’ properties.

I sort of like the idea of first setting “some properties” to some value and then using your mouse cursor as a magic wand that changes the properties of anything you click on.

I’m not sure if this idea would fit very well with a program like KiCad though.
KiCad has many different sorts of objects (texts, tracks, graphics, footprints, footprint links, pads, PCB outline, silkscreen and other specialized layers) and this would limit the usefulness of such a tool.
On top of that, There are many track segments, via’s, footprints and other items on a PCB, and even clicking on them one by one becomes tedious quickly and it’s easy to forget a few.

KiCad also already has a bunch of different ways to make selections, and powerful tools (such as Pcb Editor / Edit / Edit Text Y Graphics Properties that gkeeth mentioned, but also Pcb Editor / Edit / Edit Track & Via Properties, and tools for globally swapping schematic symbols (In Eeschema) and footprints (In Pcbnew), and of course also Pcbnew / Tools / …

Therefore I’m guessing that this workflow will not fit very well with KiCad

I tend to agree with you that the workflow is a little weird for KiCad, but it does exist in the symbol and footprint editors where properties can be copied from pins/pad to others.

Right click a pad → Copy pad properties to default or Paste default pad properties to selected.

There’s also right click a pad → Push Pad properties to other pads which is a bit similar in spirit.

The symbol editor has Push pin {length,name size,number size}.

But I think these are the exceptions that prove the rule – to me those features are useful, but feel somewhat out of place compared to the rest of KiCad. So I agree with you :slight_smile:

In AutoCad there are many different types of entities also. If you try to match and entity thats not appropriate then it just ignores your click.

Believe me, when you start using Match Properties in AutoCad the workflow speed goes through the roof…and for KiCad even if it was just available (to start with maybe) for tracks then it would be a primary command…for me anyways…:slight_smile:

Ian.

I don’t know how much experience you have with KiCad, but you’re relatively new on this forum.

How familiar are you with net classes?
If you’ve set them up properly, then simply by changing the parameters of a net class ( Pcb new / file / Board Setup / Design Rules / Net Classes ) and then making some selection (for example by selecting a whole net, (or all tracks on the PCB), pressing e for edit pops up a dialog that lets you update them to their net class parameters (or you can do something else with it).

KiCad is quite different from a mechanical CAD program. I used to like Autocad a lot, back in the dos age, I think I used version 12. For mechanical cad, I’ve become completely addicted to parametric drawing in 3D though. Autocad could do some 3D stuff, but it was quite cumbersome, but that was also 20+ years ago. I’m guessing though that it does not do (much) parametric modelling. But it’s also not very relevant.


Maybe it’s better if you give some examples of the sort of stuff you want to change in your KiCad project in this way. Maybe we can give some effective way of doing it with the current capabilities of KiCad.