'Layout' refers to the multi-layer geometrical shapes which describe the physical circuit.
Cells may contain geometrical shapes on different layers. Instances of cells don't contain any shapes because they are 'clones' of their template cell. However, instances have a location, rotation and magnification (rarely used) relative to their parent cell.
Following the spirit of the hierarchy traits, LibrEDA also defines traits for
accessing and editing layout information:
LayoutBase also defines ID types for layout objects (
Coord specifies the actual data type used for coordinates in the euclidean plane.
For most applications this will be an
LayerId is a handle which points to a certain layer. Layers can be referenced also by
(index, datatype) tuples as used in GDSII or Oasis file formats.
However, names and layer numbers first need to be converted into a
Geometrical shapes are based on the
iron-shapes crate and further documented in Euclidean Geometry.