From a3728f52ce5f3d6be6bcf82c0204d362d4c6376a Mon Sep 17 00:00:00 2001 From: Tyler Ward Date: Sun, 28 Jun 2020 21:58:24 +0100 Subject: [PATCH] Fix for Designators apearing across all colours of wires of a guage. (#37) The wirelist for the bom now has individual designators added. this also alows for the removal of designator list merging later. --- src/wireviz/wireviz.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/wireviz/wireviz.py b/src/wireviz/wireviz.py index 43b7613..83dba1e 100755 --- a/src/wireviz/wireviz.py +++ b/src/wireviz/wireviz.py @@ -287,15 +287,13 @@ class Harness: for bundle in items.values(): # add each wire from each bundle to the wirelist for color in bundle.colors: - wirelist.append({'gauge': shared.gauge, 'gauge_unit': shared.gauge_unit, 'length': shared.length, 'color': color, 'designators': list(items.keys())}) + wirelist.append({'gauge': shared.gauge, 'gauge_unit': shared.gauge_unit, 'length': shared.length, 'color': color, 'designator': bundle.name}) # join similar wires from all the bundles to a single BOM item types = Counter([(v['gauge'], v['gauge_unit'], v['color']) for v in wirelist]) for type in types: items = [v for v in wirelist if (v['gauge'], v['gauge_unit'], v['color']) == type] shared = items[0] - designators = [i['designators'] for i in items] - # flatten nested list - designators = [item for sublist in designators for item in sublist] # https://stackoverflow.com/a/952952 + designators = [i['designator'] for i in items] # remove duplicates designators = list(dict.fromkeys(designators)) designators.sort()