FlipH

class ipkiss3.all.FlipH

Specifies that a horizontally mirrored version of the component must be placed.

If the instance has transformations, then these transformations are taken into account when the instance is flipped.

    # | #
  ### | ###
##### | #####

See also

FlipV

Examples

>>> i3.FlipH(['inst1', 'inst2', 'inst3'])
>>> i3.FlipH('inst1', 'inst2', 'inst3')
>>> i3.FlipH('inst1')
import si_fab.all as pdk
import ipkiss3.all as i3
import matplotlib.pyplot as plt

gc = pdk.FC_TE_1550()
x_space = 100
circuit = i3.Circuit(
    insts={"gc_in": gc, "gc_out": gc},
    specs=[
        i3.Place("gc_in:out", position=(0, 0)),
        i3.Place("gc_out:out", position=(x_space, 0)),
        i3.FlipH("gc_out"),  # flipping the second grating coupler horizontally
        i3.ConnectManhattan("gc_in:out", "gc_out:out"),
    ],
)
circuit.Layout().visualize()
../../../../_images/ipkiss3-all-FlipH-1.png