Commit Graph

78 Commits

Author SHA1 Message Date
Salvador E. Tropea d719718eca Moved KiBoM default behavior to the KiBoM variant.
So it can be applied to other outputs.
2020-09-05 18:58:26 -03:00
Salvador E. Tropea 1163d28e71 Added "Not " prefix to negation filter names. 2020-09-05 18:56:01 -03:00
Salvador E. Tropea 7e5791fcfa Added variants to the IBoM output. 2020-09-05 17:48:25 -03:00
Salvador E. Tropea d09400d49d Added support for variants to the PcbDraw output. 2020-09-04 18:08:22 -03:00
Salvador E. Tropea dab7baa2d4 Fixed show_components validation in out_pcbdraw.
The same error could be in other places.
I had to change the internal logic in Optionable.
The old code allowed invalid values to be used.
2020-09-04 18:06:17 -03:00
Salvador E. Tropea cf46a8ba86 Added variants support to the STEP output.
3D Models of excluded components are removed.
2020-09-03 18:50:30 -03:00
Salvador E. Tropea b36e276969 Added crosses in the *.Fab layer for excluded components. 2020-09-03 17:17:08 -03:00
Salvador E. Tropea 8bf0a13210 Remove filtered components from the *.Adhes layer.
All shapes in the *.Adhes are removed.
2020-09-03 12:29:04 -03:00
Salvador E. Tropea c56af11007 Added variants to all the PCB plot outputs.
Tested for gerbers that are currently excluding pads from *.Paste.
2020-09-03 11:11:03 -03:00
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