worldfile.xl(ワールドファイルの変換)
著者: 森 洋久 / joshua@globalbase.org ※
プロトタイプ
xl worldfile.xl / direct [prefix] [unit] [crd]
xl worldfile.xl / csv [encoding] [filename]
引数
[prefix] 変換元データの拡張子
[unit] 変換先座標系の長さの単位
[crd] 変換後のマッピングする先の座標系ファイル。
[encoding] CSVフィアルの文字コーディング名
[filename] CSVファイル名
オプション
環境
エージェント xl
説明
最初の引数に direct を指定した場合、一つの座標系[crd]に複数のワールドファイルをマッピングします。最初の引数に csv を指定すると、所定のフォーマットに従って記述されたcsvファイル[filename]からよみとられたワールドファイルを一つ一つ別々の座標系にマッピングし、その座標系をさらにワールドファイルに基づいて[crd]で指定した座標系にマッピングします。
directによる変換は、複数のワールドファイルが同一の画像を分割したものと考えられる場合に使います。一方、csvによる変換は複数のワールドファイルが全く独立した別々の図面である場合に利用することができます。
directによる変換の場合、[prefix]はワールドファイルの画像の拡張子を指定します。他の拡張子の画像は大正となりません。[unit]はワールドファイル中のデータの単位を示します。これがマッピング先の座標系のベースunitでもある必要があります。[crd]はマッピング先の座標系を表します。
$ xl worldfile.xl - - / direct tif m ginowan.crd
....
$
するとワーキングディレクトリにあるすべてのtifワールドファイルについて、.lst,.crファイルが生成され、さらに、.lstフィアルをワールドファイルに基づいてginowan.crdにマッピングする.mapファイルが生成されます。
csvによる変換の場合、[encoding]はCSVファイルの記述に使われている文字コード名を与えます。[filename]は対象とするCSVファイルを示します。
csvファイルの中身の記述については、各ワールドファイルを各行に割当て、ワールドファイル名(幹の部分のみの名前)、ワールドファイルごとの生成される書誌情報を与えます。ファイルの終わりにコントロールコマンドを挿入します。これについてcsvファイルをExcelで開いたところを図 図(CSVファイル)に示します。
図 CSVファイル
|
"#"ではじまる行はコメントであり、処理対象とはなりません。 ファイルの後半、"."から始まる行がすべてコマンドの部分です。コマンドの詳しい内容は 「worldfile.xlスクリプト用CSVコマンド・リファレンス」を参照されたい。
原則として、コマンドは、一行に一コマンドで、最初の列にコマンド名があり、B列から右は各列に書かれている書誌データに固有なオプションを与えるという形式になっています。 ここでつかわれているコマンドについて若干説明をすると、以下のようになります。
.characterの行では、アルファベットの文字種を限定します。smallが書かれてある列はすべて小文字に変換されます。なにも書かれていない列は変換されません。
.pre.stringの行では、書誌データの前に必ずつける文字列を与えます。なにも書かれていないところはなにも先頭につけません。
.qualifierは書誌データのどの列をどのクオリファイヤーへ対応させるかを示します。これが指定されていない列は最終的に書誌データには含まれません。
.qtypeは、書誌データのデータタイプを与えます。
.qdataは、すべての座標系に共通な書誌データを与えます。
.wf.mappingは、他の行とは関係なく、ワールドファイルをマッピングする先の座標系URLを与えます。
.wf.processingは、処理対象となるワールドファイルファイル名のある列に画像ファイル拡張子を与えます。
▲ページトップへ戻る
戻り値
-
directの場合
各ワールドファイルに対応した、.lst,.cr,.mapファイル
.mapは、.lstファイルから[crd]へのマッピング。
-
csvの場合
各ワールドファイルに対応した、.lst,.cr, .map(1) , .map(2) ,.crdファイル
.map(1) は.lstファイルから.crdファイルへのマッピング。
.map(2) は、.crdファイルから[crd]ファイルへのマッピング。
エラー
参考
バグ
▲ページトップへ戻る
|