Layer map
layer_map
Utilities to go lyp <-> yaml.
LayerGroupModel
pydantic-model
Bases: BaseModel
A group of layers.
Fields:
-
name(str) -
members(list[LayerPropertiesModel | LayerGroupModel])
Source code in kfactory/technology/layer_map.py
77 78 79 80 81 | |
LayerPropertiesModel
pydantic-model
Bases: BaseModel
A leaf node in the layer properties.
Fields:
-
name(str) -
layer(tuple[int, int]) -
frame_color(Color | None) -
fill_color(Color | None) -
dither_pattern(int) -
line_style(int) -
visible(bool) -
width(int) -
xfill(bool) -
layer_to_name(bool) -
transparent(bool) -
valid(bool)
Validators:
-
color_to_frame_fill -
dither_to_index→dither_pattern -
line_to_index→line_style
Source code in kfactory/technology/layer_map.py
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | |
color_to_frame_fill
pydantic-validator
color_to_frame_fill(data: dict[str, Any]) -> dict[str, Any]
Convert a color string to a frame fill.
Source code in kfactory/technology/layer_map.py
36 37 38 39 40 41 42 43 44 45 46 | |
dither_to_index
pydantic-validator
dither_to_index(v: str | int) -> int
Convert string to the index with the dict dither2index.
Source code in kfactory/technology/layer_map.py
48 49 50 51 52 53 54 | |
dither_to_json
staticmethod
dither_to_json(value: int) -> str
Convert dither int to string key on json dump.
Source code in kfactory/technology/layer_map.py
64 65 66 67 68 | |
line_to_index
pydantic-validator
line_to_index(v: str | int) -> int
Convert string to the index with the dict dither2index.
Source code in kfactory/technology/layer_map.py
56 57 58 59 60 61 62 | |
line_to_json
staticmethod
line_to_json(value: int) -> str
Convert dither int to string key on json dump.
Source code in kfactory/technology/layer_map.py
70 71 72 73 74 | |
LypModel
pydantic-model
Bases: BaseModel
Model for the whole lyp.
Fields:
-
layers(list[LayerGroupModel | LayerPropertiesModel])
Source code in kfactory/technology/layer_map.py
84 85 86 87 | |
group2lp
group2lp(lp: LayerGroupModel) -> lay.LayerPropertiesNode
Convert a group model to a LayerPropertiesNode.
Source code in kfactory/technology/layer_map.py
214 215 216 217 218 219 220 221 222 223 224 225 | |
kl2group
kl2group(
iterable: LayerPropertiesIterator,
) -> list[LayerGroupModel | LayerPropertiesModel]
Convert a full LayerPropertiesIterator to a pydantic representation.
Source code in kfactory/technology/layer_map.py
165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 | |
kl2lp
kl2lp(kl: LayerPropertiesNodeRef) -> LayerPropertiesModel
Convert a KLayout LayerPropertiesNodeRef to a pydantic representation.
Source code in kfactory/technology/layer_map.py
147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 | |
lp2kl
lp2kl(lp: LayerPropertiesModel) -> lay.LayerPropertiesNode
LayerPropertiesModel to KLayout LayerPropertiesNode.
Source code in kfactory/technology/layer_map.py
184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 | |
lyp_to_lyp_model
lyp_to_lyp_model(inp: Path | str) -> LypModel
Convert a lyp file to a LypModel.
Source code in kfactory/technology/layer_map.py
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 | |
lyp_to_yaml
lyp_to_yaml(inp: Path | str, out: Path | str) -> None
Convert a lyp file to a YAML ffile.
Source code in kfactory/technology/layer_map.py
138 139 140 141 142 143 144 | |
yaml_to_lyp
yaml_to_lyp(inp: Path | str, out: Path | str) -> None
Convert a YAML file to a lyp file readable by KLayout.
Source code in kfactory/technology/layer_map.py
90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 | |