ProcessPurposeLayer(process, purpose, **kwargs)¶
Combination of a ProcessLayer and a PatternPurpose, defining together a unique i3.Layer.
Used instead of i3.Layer when a 2D (layer, purpose) space is needed to fully describe layout drawings.
process: ProcessLayer, required
ProcessLayer associated with this process/purpose combination
purpose: PatternPurpose, required
PatternPurpose associated with this process/purpose combination
name: str, required
number: int, required
Layout primitives such as Rectangle, Circle, Boundary, Path have a layer associated with them. By using (layer, purpose) pairs, it is easier to discriminate between actual mask drawings and other data which is used for design automation, verification or designer documentation.
The technology settings contain mappings between PPLayer objects and file format or database specific primitives. For instance, when exporting to a GDSII file, the technology determines how PPLayer objects are mapped to GDSII layer numbers and datatype numbers.
ProcessPurposeLayer and PPLayer are synonyms. Use i3.PPLayer.
>>> import ipkiss3.all as i3 >>> wg = i3.ProcessLayer(name="waveguide", extension="WG") >>> nofill= i3.PatternPurpose(name="no dummy filling", extension="NOFILL", name="NOFILL") >>> wg_nofill = i3.PPLayer(process=wg, purpose=nofill) >>> print(wg_nofill) PPLAYER WG-NOFILL