Eagle ULPのメモ

同じパターンでパーツを置きたいとき、ひとつのグループのパターンを描いた後、Schematicでその回路をコピー(基板側にはコピーされたパーツの固まりが配置される)、Schematic上で同じ位置に置きたい部品の名前に「L」を追加(コピーされた状態だとR1… R10がオリジナルだとR11…R20となった所をR1L…R11Lとする)Lとしたくない場合は7-8行目のLを別のアルファベットなどに変更(あとこのプログラムは各パーツの位置を120mm左にコピーしています)。
下記ULPを保存して、Boardエディタで実行。ダイアログの内容(移動コマンドリスト)を確認し、Executeボタンをクリック。
配線やパーツの回転ができていないのでやらなきゃなぁ、、

string cmd;

if (board) {
board(B) {
B.elements(E) { // smashed texts
string buff;
if(strstr(E.name, "L") == -1){
sprintf(buff, "move %sL (%f %f);\n", E.name, u2mm(E.x)+120, u2mm(E.y));
cmd += buff;
}
}
}

// EditBox
int Result = dlgDialog("Descriptions") {
dlgHBoxLayout {
dlgVBoxLayout { dlgSpacing(500); }
dlgTextEdit(cmd);
}
dlgHBoxLayout {
dlgPushButton("+Execute") dlgAccept();
dlgSpacing(100);
dlgPushButton("-Cancel") dlgReject();
}
};
if (Result == 0) exit(0);
exit(cmd);
}

else {
dlgMessageBox("\n Start this ULP in a Board \n");
exit (0);
}


コメントを残す

メールアドレスが公開されることはありません。

6 + 3 =