15,680行、800,053文字-プリント回路基板を開発するシステムであるAltium Designer内でスクリプトが作成される今日のサイズです。

開始する
2014年、デザインエンジニアとして働き、回路基板を開発しました。 軍隊の受け入れ、完全な設計文書(CD)の準備、ESKDの標準制御-これらすべてが、Altiumシステムであるオーストラリア-中国-アメリカソフトウェアをa敬の念にさせます。 それらはソビエトのGOSTには馴染みがないため、図面の設計に関する古い指示と標準です。 私たちの部署の1人の従業員は、取締役会の図面がCDを設計するためのすべての規則と規制を満たすように、シフト全体を費やすことがありました。
今では約10分で完了します。
私はあなたが自分自身の生活を単純化し、さらに多くの人々が仕事をすることができると決めました。 私はそれを理解し始め、オープンAPIがあることを発見し、例を調べ始めました。Altiumの私の最初のスクリプトはすでにボードに線を引いています。喜びに制限はありません。
ゆっくりと、少しずつ、プログラミングの知識を広げていました。それまでは、その多くに出会ったことがなかったからです。大学では、学期に振り子が書いたのを覚えているので、それだけです。
最初のインターフェース
インターフェースを作成する必要が出てきましたが、最初は次のようでした。

このバージョンは、寸法、矢印付きの吹き出しの描画方法をすでに知っていました。
ドキュメントには特別な説明はなく、APIの関数を使用した経験はなく、githubの一部の
スクリプトと標準のAltiumスクリプトのみが使用されていることを理解してください。 カテゴリから今日までのwikiの説明:
SetState_Enabled method (IPCB_Primitive interface) Syntax Procedure SetState_Enabled (Value : Boolean); Description Example See also IPCB_Primitive interface
そして、説明全体ですが、試行錯誤によってどのように機能するかを判断することはできました。
人々があなたの仕事をどのように使い、すべてがうまくいくかを見るとき、それがプログラムが作成される理由ではないので、新しい機能を導入するたびに喜びでした。 この段階で、図面を作成する時間はすでにほぼ半分に短縮されています。
開発
次のバージョンはすでに次のようになっています。

彼女は、ボード内にシートを挿入する方法、図面用のポリゴンをハッチングする方法、図面用のグリッドと他の要素を挿入する方法をすでに知っていました。
主な問題は、Altium開発環境が回路基板を開発するためのシステムであるということでした。 CDを設計するための十分なツールがありません。ロシアの標準ではさらにそうです。 基本的に、スクリプティングは環境の標準ツールキットを拡張し、CDを開発して印刷できるようにしました。
たとえば、さまざまな形式のシートをコードに直接挿入し、個別のファイルを作成しませんでした。 これにはExcelテーブルを使用し、手動でフォーマットをPCBファイルに挿入し、すべてのラインのすべてのプロパティ、それらの座標、幅、テキスト座標などを選択しました。 これらすべてを通常の配列に入れます。 次に、スクリプトは、ボードファイル自体に各フォーマット行を順番に作成しました。 そして、すべての形式の各シートに対して。
私たちの日々
これで、プログラムは次のようになります。


私は決してデザイナーではありません。ボタンをどこかに彫刻しなければならないことがありました。最も有名なCADシステム、メニュー、設定、ドロップダウンボタンなどの作成方法を調べました。
船内合計:
- 50以上の設定、ボードファイル内に保存
- ボードを変更するときに図面を更新する
- ビューをシートの中央に自動的に挿入します
- ワンボタンPDF生成
- オンザフライで偏差を再計算して寸法を編集する
- ラジアルメッシュ、4面メッシュ、リスク、カスタマイズ可能なピッチ
- 将来使用するためにサムネイルをtxt形式で保存する
などなど。
多くの神経、強さ、忍耐、眠れない夜-過ごした。 職場で図面を作成することは貴重です。
このスクリプトは、ギタやダークテーマなどを使用せずに、4年目だけ私が書いたものです。 パスカルのみ、ハードコアのみ。 最後までお読みいただきありがとうございます、私はコミュニケーションをさせていただきます!
PCB内の描画図の例試すプログラムのバージョン