kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #09125
Re: PLUGIN::Footprint*() from python
Good afternoon,
I've been glancing at this thread on&off for a while and have and have an
observation and suggestion.
A board has a distinct set of lamination layers:
Front
Inner 1
:
Inner n
Back
Each lamination may have one or more physical materials or operations:
Substrate, Copper, Adhesive, Solder Paste, Solder Mask, Silk Screen,
Drill, Place Parts, Probe, etc...
Each lamination may have optional engineering and documentation data:
Drawings, Comments, ECOs, Test Parameters, Thermal Profiles, and
whatnot.
Following the style proposed by Wayne, I suggest the following naming
scheme:
{Layer}.{Type}
Where:
Layer is a symbolic name (such as Front, Inner1, Inner2, Inner{n}, Back),
a symbolic abbreviation (F, I1, I2, I{n}, B), or corresponding numeric
layer number (0 - {n}).
Type is a concise symbolic identifier for a material or documentation
type: Sub, Cu, Adh, Paste, Mask, Silk, Drill, Part, Probe, ..., Draw, Cmnt,
Eco, etc.
An optional form of {Layer}.{Type}{n} would allow for multiple ECO, Silk
Screen, or other types on a given layer where it may be appropriate, while
still following the style.
Group selections take the form:
{Layer}.* - All materials and documentation on a given
layer ( Front.* for the entire front layer in the stack)
{Layer}+{Layer}.* - All materials and documentation on given layers
(F+B.* for everything on the front and back)
{Layer}-{Layer}.* - All materials and documentation on range of
layers (0-6.* for the front and top 6 inner layers)
*.{Type} - Given type on all layers (*.Cu for all copper
layers)
*.{Type}{n} - Given specific type with index on all layers
(*.Part3 for parts in 3rd stuffing procedure)
*.{Type}{n}+{n} - Given specific types with given indices on all
layers (*.Eco1+4 for ECOs 1&4)
*.{Type}{n}-{n} - Given range of specific types on all layers (
*.Silk1-3 for White, Red, and Yellow silk screens)
and all reasonable linear combinations of the above, subject to
existing internal restrictions, such as
{Layer}.{Type}{n}-{n} - Given range of types on specific layer (
B.Eco1-5 for the first 5 ECOs on the back layer)
...just my thoughts, take them with a grain of salt.
~~~Chris Giorgi~~~
On Tue, Nov 13, 2012 at 9:36 AM, Wayne Stambaugh <stambaughw@xxxxxxxxxxx>wrote:
> On 11/13/2012 10:16 AM, Dick Hollenbeck wrote:
>
>> The open issue of changing the non-copper names is best settled if we had
>>> a complete
>>>
>> list of proposed names to change to, and to make the determination if
>> this is worth the
>> disruption.
>>
>>
>> Aw oh. I slept on it and woke up thinking about this as my first
>> conscious waking
>> thoughts this morning. (Don't say it, I know I need to get a life, I've
>> been working on
>> that, for a loooong time.)
>>
>>
>> As I attempt to show, I think there are some improvements in conciseness
>> possible
>> (conciseness = ratio of clarity to size), even in the copper layer naming.
>>
>>
>> I like the wildcard notion and wanted to be able to use it in a few other
>> places. I also
>> noticed that "Inner3" does not explicitly say it is a copper layer.
>>
>>
>> Of course the value of the combos is the reduction in Pcbnew data file
>> size, and increased
>> speed of parsing. (Would put the [combo] mask into the hashtable instead
>> of the layer index.)
>>
>>
>> Attached is my proposal and recommendation.
>>
>> I would say that the combos can be used even in *.kicad_pcb files where
>> they can. Custom
>> layer names pertain to cu layers, and to tracks more than pads. Here are
>> the heuristics:
>>
>>
>> a) if a combo can be recognized in a layerMask when Format()ing, then it
>> should be used,
>> in either BOARDs or MODULEs.
>>
>> b) otherwise, if saving a BOARD, then use the translated layer names.
>>
>> c) otherwise, if saving a MODULE, then use the untranslated english layer
>> names.
>>
>
> Your proposal makes sense to me. I like the use of the wildcard search
> pattern to indicate multiple layers. You might consider renaming *.SoldP
> to *.Paste for the solder paste layer if your going to use *.Mask for the
> solder mask layer. It's a bit more consistent and solder is also implied
> in the case of *.Paste.
>
> Wayne
>
>
>
>>
>>
>>
>> ______________________________**_________________
>> Mailing list: https://launchpad.net/~kicad-**developers<https://launchpad.net/~kicad-developers>
>> Post to : kicad-developers@lists.**launchpad.net<kicad-developers@xxxxxxxxxxxxxxxxxxx>
>> Unsubscribe : https://launchpad.net/~kicad-**developers<https://launchpad.net/~kicad-developers>
>> More help : https://help.launchpad.net/**ListHelp<https://help.launchpad.net/ListHelp>
>>
>>
>
> ______________________________**_________________
> Mailing list: https://launchpad.net/~kicad-**developers<https://launchpad.net/~kicad-developers>
> Post to : kicad-developers@lists.**launchpad.net<kicad-developers@xxxxxxxxxxxxxxxxxxx>
> Unsubscribe : https://launchpad.net/~kicad-**developers<https://launchpad.net/~kicad-developers>
> More help : https://help.launchpad.net/**ListHelp<https://help.launchpad.net/ListHelp>
>
Follow ups
References
-
Winbuilder Nanometer support
From: Brian Sidebotham, 2012-10-11
-
Re: Winbuilder Nanometer support
From: Wayne Stambaugh, 2012-10-11
-
Re: Winbuilder Nanometer support
From: Adam Wolf, 2012-10-11
-
Re: Winbuilder Nanometer support
From: Wayne Stambaugh, 2012-10-11
-
Re: Winbuilder Nanometer support
From: Dick Hollenbeck, 2012-10-11
-
Re: Winbuilder Nanometer support
From: Adam Wolf, 2012-10-11
-
Re: Winbuilder Nanometer support
From: Hans Henry von Tresckow, 2012-10-19
-
Re: Winbuilder Nanometer support
From: Adam Wolf, 2012-10-19
-
Re: Winbuilder Nanometer support
From: Miguel Angel Ajo Pelayo, 2012-10-19
-
Re: Winbuilder Nanometer support
From: Adam Wolf, 2012-10-19
-
Re: Winbuilder Nanometer support
From: Miguel Angel Ajo Pelayo, 2012-10-19
-
PLUGIN::Footprint*() from python
From: Dick Hollenbeck, 2012-10-19
-
Re: PLUGIN::Footprint*() from python
From: Miguel Angel Ajo Pelayo, 2012-10-19
-
Re: PLUGIN::Footprint*() from python
From: Dick Hollenbeck, 2012-11-11
-
Re: PLUGIN::Footprint*() from python
From: Dick Hollenbeck, 2012-11-11
-
Re: PLUGIN::Footprint*() from python
From: Wayne Stambaugh, 2012-11-11
-
Re: PLUGIN::Footprint*() from python
From: Dick Hollenbeck, 2012-11-11
-
Re: PLUGIN::Footprint*() from python
From: Wayne Stambaugh, 2012-11-12
-
Re: PLUGIN::Footprint*() from python
From: Dick Hollenbeck, 2012-11-12
-
Re: PLUGIN::Footprint*() from python
From: Dick Hollenbeck, 2012-11-13
-
Re: PLUGIN::Footprint*() from python
From: Wayne Stambaugh, 2012-11-13