linkcad.controller
高レベルの変換ワークフローコントローラーです。linkcad.conv を直接駆動するのではなく、完全な変換ウィザードの状態機械(検証、インポート、変換、エクスポート)が必要な場合に使用します。
from linkcad.controller import ConversionController, ConversionStateクラス
ConversionController
LinkCAD 変換ウィザードで使用される複数ステップの変換ワークフローを統括します。
from linkcad.controller import ConversionController
ctrl = ConversionController()ctrl.set_import_format("GDSII")ctrl.set_export_format("DXF")ctrl.set_import_path("/data/design.gds")ctrl.set_export_path("/data/design.dxf")
ctrl.run()if ctrl.state == ConversionState.Done: print("Conversion succeeded")else: print(f"Failed at state: {ctrl.state}")| メソッド / プロパティ | 説明 |
|---|---|
ConversionController() | 新しいコントローラーインスタンスを作成します |
ctrl.set_import_format(name) | 名前でインポート形式を設定します(例: "GDSII") |
ctrl.set_export_format(name) | 名前でエクスポート形式を設定します |
ctrl.set_import_path(path) | 入力ファイルパスを設定します |
ctrl.set_export_path(path) | 出力ファイルパスを設定します |
ctrl.run() | 完全な変換パイプラインを実行します |
ctrl.state | 現在の ConversionState |
ctrl.drawing() | 読み込まれた Drawing を返します(インポート後に利用可能) |
ConversionState
変換ウィザードの現在状態を表す列挙型です。
| 値 | 説明 |
|---|---|
ConversionState.Idle | まだ開始していません |
ConversionState.Importing | インポート手順を実行中です |
ConversionState.Transforming | レイヤーマップと変換を適用中です |
ConversionState.Exporting | エクスポート手順を実行中です |
ConversionState.Done | 正常に完了しました |
ConversionState.Failed | エラーが発生しました |