Salvador E. Tropea
26ee971e26
Added variants suport to out_position
...
Also: we never include virtual components.
2020-09-02 18:08:50 -03:00
Salvador E. Tropea
d681528a03
Fixed: SCH load and PCB components consolidation reuse.
...
The code did the tasks over and over.
2020-09-02 18:08:04 -03:00
Salvador E. Tropea
712d135df5
Fixed: if no filters are applied we must reset the fields.
...
Added funtions to apply the filters
Moved code from bom.py to out_bom.py
2020-09-02 18:07:38 -03:00
Salvador E. Tropea
9558f7cf45
Added test for rogue component in PCB.
2020-09-02 15:16:23 -03:00
Salvador E. Tropea
42562185ea
Added filter options using PCB attributes.
...
KiCad 6 will break this, we'll see how to adapt.
2020-09-02 14:48:26 -03:00
Salvador E. Tropea
0a6fdccb1d
Removed dead code.
2020-09-01 20:32:41 -03:00
Salvador E. Tropea
0b3c36d11a
Fixed the DrawText.write method
...
Was writing an extra quote
2020-09-01 20:31:41 -03:00
Salvador E. Tropea
76ea47c04f
Now the default exclude filter excludes ref == '#*'
2020-09-01 20:30:34 -03:00
Salvador E. Tropea
12534d8202
Added new filter criteria: exclude ref == '#*'
2020-09-01 20:29:49 -03:00
Salvador E. Tropea
9ebf18ba11
Added new basic filters.
...
`!` is always False
`_none` is no filter
2020-09-01 18:48:45 -03:00
Salvador E. Tropea
563c00cc5b
Enabled the variants exception catch.
...
Now the variants configuration can raise exceptions.
2020-09-01 18:47:38 -03:00
Salvador E. Tropea
8a2810fd8d
Added support to remove the filters of the internal BoM.
2020-09-01 18:46:59 -03:00
Salvador E. Tropea
c26481790a
Added support for filters to sch_variant
2020-09-01 16:55:36 -03:00
Salvador E. Tropea
0216fc93c7
Added support for filters and variants to pdf_print_sch
2020-09-01 16:54:51 -03:00
Salvador E. Tropea
05f14e2049
Removed the plural in variant.
...
Is just one. It can be complex, but one name.
2020-09-01 16:51:11 -03:00
Salvador E. Tropea
16aefbffb6
Removed debug print.
2020-09-01 16:49:51 -03:00
Salvador E. Tropea
7cd0ccafa1
Fixed component save method.
...
The first value of the redundant position is the unit.
Not always 1.
2020-09-01 16:48:43 -03:00
Salvador E. Tropea
744aa3b9c5
Added a simple output to generate filtered schematics.
...
They can display DNF components crossed!
2020-08-31 20:51:20 -03:00
Salvador E. Tropea
4cc8a0916f
Added filters to the variants.
...
So they have the same functionality than internal BoM.
I keep the (redundant) filters in internal BoM so users doesn't need to
create a variant just to apply a filter.
2020-08-31 20:49:41 -03:00
Salvador E. Tropea
7882cb0f4f
Moved internal filters to the base class.
...
So they can be used not only for internal BoM purposes.
2020-08-31 20:48:56 -03:00
Salvador E. Tropea
f12c7fc1ce
Removed code for testing.
2020-08-31 20:45:08 -03:00
Salvador E. Tropea
b0c014abe9
Added support to write schematics.
2020-08-31 20:44:34 -03:00
Salvador E. Tropea
094cf41e7b
Added support for Italic and Bold in Text* elements.
2020-08-31 20:43:52 -03:00
Salvador E. Tropea
a0db94d67c
Added support for cross to multi-part components.
2020-08-31 20:42:06 -03:00
Salvador E. Tropea
8b0247bf80
Fixed rectangle computation for pins.
...
Left and Right exchanged.
2020-08-31 20:41:02 -03:00
Salvador E. Tropea
6620779e09
Handled missing components.
2020-08-30 18:49:01 -03:00
Salvador E. Tropea
fee593c091
Added members to create the cache.lib
...
This is equivalent to the cache.lib, not the real one.
We can generate two versions, one normal and the other with crossed
components.
Now we need a schematic to use them.
2020-08-30 18:26:27 -03:00
Salvador E. Tropea
48be2fa749
Merge pull request #5 from INTI-CMNB/variants
...
Added Variants and Filters
2020-08-30 12:10:29 -03:00
Salvador E. Tropea
41c66b1ab4
Added support for '~' as empty value.
2020-08-30 11:54:34 -03:00
Salvador E. Tropea
4ed499531b
Removed dead code.
2020-08-30 11:54:15 -03:00
Salvador E. Tropea
58430d8611
Fixed errors in Not and Multi Filters implementation.
2020-08-30 11:53:21 -03:00
Salvador E. Tropea
a1455e0f46
Added more flexibility to filters.
...
Support for:
- Pass all
- Negated (in addition to its internal option)
- List of filters
2020-08-29 19:32:04 -03:00
Salvador E. Tropea
c0a1867dd5
Added support for filters to the internal BoM generator.
...
- Now we can configure more details, like the DNC.
- We can also mix KiBoM and IBoM strategies.
- Adapted the test examples that used filtering.
2020-08-29 17:41:57 -03:00
Salvador E. Tropea
6af9faf909
Created the base filter class and the generic filter.
...
Moved all the KiBoM and IBoM filter functionality that was in their
variants to this generic mechanism.
2020-08-29 17:39:56 -03:00
Salvador E. Tropea
ad7ed9183a
Added the concept of `filters`
...
Closely related to variants, but more abstract.
Will allow much more configurability.
2020-08-29 17:38:32 -03:00
Salvador E. Tropea
006072e842
Documented computed component flags.
...
fitted, in_bom (new) and fixed
2020-08-29 17:31:35 -03:00
Salvador E. Tropea
249caad348
Implemented the IBoM variants styles.
...
The core functionality is now tested in the internal BoM.
The IBoM output needs adjust to allow using the variants with it.
2020-08-28 20:12:21 -03:00
Salvador E. Tropea
c227b10f86
Interpret as error using unknown fields in variants.
2020-08-28 20:11:07 -03:00
Salvador E. Tropea
c6c4b57b3d
Added support for global output file name to the gerbers.
2020-08-28 16:56:51 -03:00
Salvador E. Tropea
cbf24200a5
Updated the list of file to exclude from Python cache.
...
Also sorted the list.
2020-08-28 16:50:02 -03:00
Salvador E. Tropea
0bdce78004
Implemented the new variants mechanism in the internal BoM.
2020-08-28 16:49:20 -03:00
Salvador E. Tropea
a19c6157b7
Added support to see the variant in the output file name.
...
Now the variant can affect the output file name.
2020-08-28 16:48:02 -03:00
Salvador E. Tropea
3be45edf07
Added the basic infraestructure for variants.
...
Now variants are defined separately so we can apply the variants for
more than one output.
It will also allow different variant semantics.
2020-08-28 16:46:24 -03:00
Salvador E. Tropea
7c11370afd
Added tests for missing convert and/or rsvg-convert
2020-08-27 19:18:08 -03:00
Salvador E. Tropea
c1e63da09a
Moved the fields validation to a seprated methode.
...
To keep the function complexity lower.
2020-08-27 18:03:41 -03:00
Salvador E. Tropea
58fd473a41
Bumped version to 0.6.2.
2020-08-25 13:48:26 -03:00
Salvador E. Tropea
90c0e14b73
Added support for PcbDraw v0.6.0.
2020-08-25 13:47:36 -03:00
Salvador E. Tropea
ee69de6e7d
Problems with PcbDraw when generating PNG and JPG.
...
Currently the script uses ImageMagick library. But the SVG conversion
is handled unreliably. ImageMagick has various backends to do it and
some of them don't work. I saw this problem many times, and is now
affecting my system. A more reliable conversion can be achieved using
`rsvg-convert`. Isn't as good as InkScape, but is smaller and works
well.
In the process I'm trimming the extra blank space generated by
PcbDraw when we have objects in layers like "User Drawings" that
extends beyond the PCB size.
I'm also compressing JPGs more aggressively, this makes a real
difference between PNG and JPG outputs. Otherwise the difference
is too small.
2020-08-25 13:16:49 -03:00
Salvador E. Tropea
cd8a32f544
Added comment pre-parsing.
...
Just to make the debug logs about which targets are skipped more
descriptive.
2020-08-25 09:36:59 -03:00
Salvador E. Tropea
e08f70e78e
No warnings about malformed value for DNFs
...
Now if the component value is any of the DNF values we avoid parsing it
as a real value.
2020-08-25 09:21:55 -03:00