コード例 #1
0
ファイル: component.py プロジェクト: tvt173/gdsfactory
    def to_dict_config(self) -> DictConfig:
        """Returns a DictConfig representation of the compoment."""
        d = DictConfig({})
        ports = {port.name: port.settings for port in self.get_ports_list()}
        clean_dict(ports)

        d.ports = ports
        d.info = self.info
        d.version = 1
        d.cells = recurse_structures(self)
        return OmegaConf.create(d)
コード例 #2
0
ファイル: component.py プロジェクト: tvt173/gdsfactory
    def to_dict_polygons(self) -> DictConfig:
        """Returns a dict representation of the flattened compoment."""
        d = DictConfig({})
        polygons = {}
        layer_to_polygons = self.get_polygons(by_spec=True)

        for layer, polygons_layer in layer_to_polygons.items():
            for polygon in polygons_layer:
                layer_name = f"{layer[0]}_{layer[1]}"
                polygons[layer_name] = [
                    tuple(snap_to_grid(v)) for v in polygon
                ]

        ports = {port.name: port.settings for port in self.get_ports_list()}
        clean_dict(ports)
        clean_dict(polygons)
        d.info = self.info
        d.polygons = polygons
        d.ports = ports
        return OmegaConf.create(d)