From 17ee18ef8a32a7d625141bf5a0878d754d764bd9 Mon Sep 17 00:00:00 2001 From: Andreas Westerwick <westerwick@pconas.de> Date: Mon, 12 Aug 2019 09:06:55 +0200 Subject: [PATCH] remove_polygons obsolete --- Tools/python/split_layers.py | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/Tools/python/split_layers.py b/Tools/python/split_layers.py index f5c0672..584d8f7 100755 --- a/Tools/python/split_layers.py +++ b/Tools/python/split_layers.py @@ -129,8 +129,21 @@ def generate_gds_file(layout_path,cellname): cell=cell.add(gdspy.Rectangle(p11, p12, 1)) cell=cell.add(gdspy.Rectangle(p21, p22, 1)) cell=cell.flatten() - num_cores = multiprocessing.cpu_count() - Parallel(n_jobs=max(1,num_cores-2), verbose=50)(delayed(split_task)(p11,p12,p21,p22,cell,layername)for layername in layer_mapping) + + assertflat=0 + for layername in layer_mapping: + print(layername) + ncell=gdspy.Cell(layername) + thelayers=layer_mapping[layername] + for element in cell.polygons: + assert 1 == max(assertflat,len(element.polygons)) + if element.layers[0] in thelayers: ncell.add(element) + ncell=ncell.add(gdspy.Rectangle(p11, p12, 1)) + ncell=ncell.add(gdspy.Rectangle(p21, p22, 1)) + ncell=ncell.flatten(single_layer=1,single_datatype=1) + newgdsii=gdspy.GdsLibrary("mask_"+layername) + newgdsii.add(ncell) + newgdsii.write_gds(layout_path+"/gds/mask_"+layername+".gds") except Exception as e: print("Can't do this:"+e) @@ -139,19 +152,6 @@ def generate_gds_file(layout_path,cellname): gdspy.LayoutViewer() -def split_task(p11,p12,p21,p22,cell,layername): - ncell=cell.copy(layername,deep_copy=True) - thelayers=layer_mapping[layername] - ncell=ncell.remove_polygons(lambda pts, layer, datatype: layer not in thelayers) - ncell=ncell.add(gdspy.Rectangle(p11, p12, 1)) - ncell=ncell.add(gdspy.Rectangle(p21, p22, 1)) - ncell=ncell.flatten(single_layer=1,single_datatype=1) - newgdsii=gdspy.GdsLibrary("mask_"+layername) - newgdsii.add(ncell) - newgdsii.write_gds(layout_path+"/gds/mask_"+layername+".gds") - print(layername) - - def show_help(): print("-n cellname:\tname of the cell to export") print("-l:\t\tswitch to render library cells because default is layout cells") -- GitLab