← Back to team overview

kicad-developers team mailing list archive

Re: Group selection idea

 

Okay, got it.

For the group selection thing, I did some quick tests today, and only letting board items belong to one group at a time seems like a good way, letting them belong to multiple groups gave me a headache in how to implement any way of handling the groups.

This would then change the format for the pcb file with one value under every saved board item in the kicad_pcb file. suggesting (group <name>)
to be used for this. ( tracks, vias, texts, etc etc )

This does not hinder the development for hierarchy of the groups later on. That could be fixed with having another field later which keeps track of the hierarchy and parents/childs groups.

I looked over my implementation and changed everything to use wxStrings and wxArrayStrings, to be more like current things in Kicad, I do not know if this was an issue or not.

Is the file format upgrade for the current implementation okay? If it is I will start implementing it this weekend.

- Kristoffer

On 01/13/2017 02:07 PM, Wayne Stambaugh wrote:
Kristoffer,

I was merely talking about getting your initial implementation correct
in Pcbnew to prevent issues with the full implementation down the road.
While I'm OK with opening up a full design specification, I think it's a
bit premature and will distract us from the immediate work at hand.
None of the schematic group linking work can happen until the new
schematic and symbol library file formats are complete.  I want to keep
the focus on grouping in Pcbnew for the time being and not get bogged
down in a full implementation specification.

Cheers,

Wayne

On 1/12/2017 3:38 PM, Kristoffer Ödmark wrote:
I think Physical design reuse (PDR) is far out of scope of the group
selection idea. However it Might be used. I actually put some thinking
on howto implement some kind of PDR into Kicad without having to
redesign everything existing already. Its in a google doc with comments
enabled.

[Google docs link]
https://docs.google.com/document/d/1ivRRu7F2g6_WU9bgHlaUTaXZw02oluMh4NA41BqEM-8/edit?usp=sharing


PDR discussions I think should be in a separate thread, since the amount
of work to get there is quite a bit more, involves both eeschema and
pcbnew, new file formatting, specifying workflows etc etc.

Its called snippets in A****m, PDR in PADS.

- Kristoffer

On 2017-01-12 18:47, Clemens Koller wrote:
Hello!

This feature looks really useful in production if it's implemented
properly.
Some comments from my side how things could be extended in the future:

Group selection (also read: table-based/parametric-based selection!)
seems like a great feature and the step towards physical design reuse
(PDR).
With some intelligent grouping of routed components and
automatic/assisted selection of components based on netlist-topology
(or manual or table based selection) it is possible to create a
physical design reuse (or channels) by duplicating groups with the
same layout but different component references + different net names /
instances of net names.
An additional approach is intelligent "group editing" (table based - a
must have for complex designs!) where there is an automatic / assisted
rename of components and netnames to create reuses. This also applies
to the schematic entry, obviously.

The word "intelligent" above means obviously, that there is some
infrastructure and coding work to consider.

An example screenshot of one of my designs using a buggy commercial
product is attached. There are 60 similar channels.
Layouting these manually would be a hell of work, obviously.

Regards,

Clemens


On 2017-01-12 17:37, Wayne Stambaugh wrote:
I think this feature would be useful but we should proceed with caution
if we are going to include persistence.  I'm guessing making groups
persistent will require a change to the pcb file format.  We should
think this through thoroughly before moving forward.  Is it possible
that this grouping could be used for an a****m like room feature?  If
so, than we need to plan this out accordingly rather than just commit a
new feature for the sake of convenience.

On 1/12/2017 6:55 AM, Tomasz Wlostowski wrote:
I like it. Give me a few days to review it and I hope it will get
merged. You'll also have to make the groups persistent (save to file).
Recursive grouping (group of groups) would be also an advantage.


Cheers,
Tom

Sent from my Samsung Galaxy smartphone.


-------- Original message --------
From: Kristoffer Ödmark <kristofferodmark90@xxxxxxxxx>
Date: 12/01/2017 12:41 (GMT+01:00)
To: kicad-developers@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Kicad-developers] Group selection idea

Hey again, What would be the chances of seing this getting into the
master branches on launchpad, what would I have to add/change to get it
there?

- Kristoffer

On 2017-01-11 21:59, Kristoffer Ödmark wrote:
Attaching Patch!

( Thanks Chris! )

On 2017-01-11 20:51, Kristoffer Ödmark wrote:
Hello!

I hacked together a group selection concept looking like this:
https://youtu.be/eJp-aJ8i0H4

It can assign BOARD_ITEM to a specific group for easier selection and
group manipulation. I am open to suggestions on changes, this is
surely
not an optimal implementation.

Useful when you may want to keep the relative position of
something on
the board like maybe a RF layout etc.

It cannot currently save the group assignments between sessions,
since
that would require some changes to the file format. That would
need some
agreement that this is indeed wanted.

it also doesnt work on zones right now.

ps: I do not now the best way to attach a patch file.
I added my feature
commit
git pull
fix conflict
commit

Anyone have any steps on how to get one patch file for this, now I
got
one patch file, and a merge.

- Kristoffer

_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp



_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


--
 -Kristoffer


Follow ups

References