def write_gdsii_mask(self, **kwargs): elems = ElementList() for pg in self.process_elements: for e in pg.elements: elems += e D = Cell(name=self.name + '_VMODEL', elements=elems) D.gdsii_output()
def gdsii_output_electrical_connection(self): elems = ElementList() overlap_elems, edges = self.edges for e in overlap_elems: elems += e for edge in edges: elems += edge.outside for e in self.cell.elements: elems += e D = Cell(name='_ELECTRICAL_CONNECT', elements=elems) D.gdsii_output()
def write_gdsii_blocks(self, **kwargs): D = Cell(name=self.name + '_BLOCKS', elements=self.block_elements) D.gdsii_output()
# --------------------- 90 Degree Turns ------------------------- # # Q1 # port1 = spira.Port(name='P1', midpoint=(0,0), orientation=0) # port2 = spira.Port(name='P2', midpoint=(20,10), orientation=180) # port1 = spira.Port(name='P1', midpoint=(0,0), orientation=90) # port2 = spira.Port(name='P2', midpoint=(20,10), orientation=270) # # Q2 # port1 = spira.Port(name='P1', midpoint=(0,0), orientation=180) # port2 = spira.Port(name='P2', midpoint=(-20,10), orientation=0) # port1 = spira.Port(name='P1', midpoint=(0,0), orientation=90) # port2 = spira.Port(name='P2', midpoint=(-20,10), orientation=270) # # Q3 # port1 = spira.Port(name='P1', midpoint=(0,0), orientation=180) # port2 = spira.Port(name='P2', midpoint=(-20,-10), orientation=0) # port1 = spira.Port(name='P1', midpoint=(0,0), orientation=90) # port2 = spira.Port(name='P2', midpoint=(-20,10), orientation=270) # # Q4 # port1 = spira.Port(name='P1', midpoint=(0,0), orientation=0) # port2 = spira.Port(name='P2', midpoint=(20,-10), orientation=180) port1 = Port(name='P1', midpoint=(0, 0), orientation=270) port2 = Port(name='P2', midpoint=(20, -10), orientation=90) D = Cell(name='Route') D += Route180(port1, port2, width=1, layer=Layer(1)) D.gdsii_output()