指定したレイヤー以外を削除するスクリプト
「BSch3Vで作図するときはいつもレイヤー0、1、7を使っていて、その他のレイヤーはメモ書き用。でも他の人にファイルを渡すときには、その他のレイヤーを全部クリアしたい」そんなときに使えるPerlスクリプトです。
回路図ファイル(.CE3)の指定したレイヤー以外を削除します。
元のデータのバックアップは必ず取った上でお使いください
スクリプトと下記サンプル(layerFilter.zip 3,747bytes)のダウンロード
このスクリプトの実行にはPerl5が必要です。Windows環境なら、あらかじめActivePerlをインストールしておいてください。
作業の例
sample.ce3 の レイヤー0、1、7以外を削除する。
元のファイルをBSch3Vで開いたところ
同じデータを8個並べたものですが、それぞれレイヤー0〜7に配置されています。
Windowsなら、layetFilter.pl スクリプトと、処理対象データ(ここではsample.ce3)を同じフォルダに入れておくとキータイプが少なくて楽だと思います。
Windowsでの実行の様子
コマンドラインの書式は、
>perl layerFilter.pl -L mask datafile[Enter]
-L mask | -Lの直後にスペースを挟んで残したいレイヤーを16進数のmaskで指定します |
datafile | 回路図ファイル(.CE3)を指定します。 拡張子まで書いてください。 |
mask の詳細
残したいレイヤーに対応するビット値のORです。レイヤー0、1、7を残したい場合は、83となります。コマンドラインで指定するmaskの前には0xを付けないでください。
レイヤー | ビット値 |
0 | 0x01 |
1 | 0x02 |
2 | 0x04 |
3 | 0x08 |
4 | 0x10 |
5 | 0x20 |
6 | 0x40 |
7 | 0x80 |
処理後のファイルをBSch3Vで開いたところ