17 January 2020 at 11:45
#5966
Ronald
Keymaster
Dear Maziyarm,
You can generate the pin layer with name/identifier ‘bb_pin’ explicitly before using a pin.
import nazca as nd
nd.add_layer(name='bb_pin', layer=(100, 0))
If you use a pin before creating the pin layer the ‘bb_pin’ layer is created automatically according to the setting in default_layers in cfg.py:
default_layers = {
'bb_pin': (1001, 0), # layer for the pin symbol (arrow)
'bb_pin_text': (1002, 0), # layer for pin name annotation
}
If the pin layer was set already you can change (overwrite) it:
nd.add_layer(name='bb_pin', layer=(100, 0), overwrite=True)
—
Some more options to change the pin layer and/or shape:
You can set the pin layer when you use put_stub() for those pins put by put_stub():
nd.put_stub(layer=(100,0))
With respect to pins in an interconnect, you can initialize a pinstyle (see cfg.py for details) per interconnect and change layer, shape, size and other pin properties:
nd.add_layer(name='my_pin', layer=(300, 0))
my_style = {
'shape': 'arrow_full',
'size': 2.5,
'layer': 'my_pin',
}
nd.set_pinstyle(name='fancy', styledict=my_style)
ic = nd.interconnects.Interconnect(pinstyle='fancy')
ic.strt().put(10)
nd.export_gds()
Ronald