Boolean operations between elements and layers

Boolean with different layers

To do Boolean operation with different layers, we should first get the layer region of the PCell. This can be done by:

  • Get the region of the layers of the PCell: device.polygon_set(layer=TECH.LAYER.XXX)

  • A, B, and C are three different layers in device and D is the layer we wish to combine after Boolean operation of A, B, and C.

    • a = device.polygon_set(layer=TECH.LAYER.A)

    • b = device.polygon_set(layer=TECH.LAYER.B)

    • c = device.polygon_set(layer=TECH.LAYER.C)

    • d = fp.el.PolygonSet((a.region - b.region) | c.region, layer = TECH.LAYER.D)

Boolean with elements

Boolean operation also support elements that are generated by geometries and assigned layers. Note that the layers of the elements have to be identical for Boolean operation.

For examples, please see Step 4: Drawing of common shapes and layout design by Boolean operations for more details.