この文章は正式な物ではありません。Association本家のILDA規格書を翻訳、+αとして自分用にまとめたものです。以下、ILDA規格によるILDAファイルフォーマットのメモとなります。ILDAのインターフェース規格についてはこちらを参照。Format”と呼びます。Files”と呼びます。Files”を”ILDAファイル”と説明します。ILDAファイルは以下のセクションから構成されているファイルです。バイトオーダーILDAフォーマットでは1バイトでは表わしきれない数(256以上)を扱うことがあります。複数のバイトにまたがって値が代入されている場合には、リトルエンディアンではなくビッグエンディアンの扱いとなります。00000000は、10進数で255ではなく、65280を表します。想定外のセクション現段階で想定されていないセクションが登場した場合には、次のセクションまでスキップする必要があります。具体的には存在しないフォーマットコードの指定、データ長指定より多いデータの混入などが挙げられます。ILDA規格では、カラーパレットヘッダを使うことを推奨しています。以前の規格には内蔵カラーパレットが定められており、1バイトの値で最大256の色を決定することが可能です。どちらも使用することが可能ですが、各ソフトウェアのメーカーによって配色が違ったため、互換性が無いということを配慮しなければなりません。内蔵カラーパレットの詳細はページ下部に記載します。ILDAセクション以下のセクションヘッダは最も一般的なセクションとなります。5-8バイト中に示されるフォーマットコードによってセクションの構造が異なる場合があります。各フォーマットコードごとのセクション説明を参照してください。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。Color)対応表(実際のところ下1桁しか使用されない。上位3バイトは0固定と考えてしまって問題ない。フォーマットコードが”3′′以上の場合に使用されます。(0-2の場合は、セクションごとの説明を参照)13バイト目から、データの長さをバイト数で示します。このヘッダに続くデータが配置されます。(フォーマットコード:3)このセクションは座標イメージに対する色情報のため、座標イメージのセクションを続けて記述しなければなりません。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。Colorセクションを示します。13バイト目から、データの長さをバイト数で示します。このフレームの総ポイント数を示します。対応するセクションの総ポイント数と一致しなければならない。ポイント数が”0′′であればファイルの終わりということになります。赤色レーザーの強度を示す、符号なし8ビットの値。値は”0′′(消灯)から”255′′(完全な赤)まで変化します。緑色レーザーの強度を示す、符号なし8ビットの値。値は”0′′(消灯)から”255′′(完全な緑)まで変化します。青色レーザーの強度を示す、符号なし8ビットの値。値は”0′′(消灯)から”255′′(完全な青)まで変化します。最後のポイントまで以上の情報を繰り返します。次のILDAヘッダが続きます。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。フォーマットコード”1′′は、2次元座標イメージセクションを示します。フレーム名を8バイトのASCII文字列で示します。作成した会社名を8バイトのASCII文字列で示します。このフレームの総ポイント数を”1′′から”65535′′の範囲で表記します。総ポイント数が”0′′の場合はイメージヘッダは最後まで続きますが、ファイルの終わりとなるために、次に続くデータはありません。アニメーションとして動作させる場合などフレーム(セクション)が複数存在する場合、フレーム番号を”0′′から最大”65535′′までの範囲で表記します。総フレーム数を”1′′から”65535′′の範囲で表します。このフレームを表示させるためのスキャナーヘッド、もしくはプロジェクターの番号。複数のプロジェクターを用意して別々に表示させるために使用します。範囲は”0′′から”255′′です。今後、使用されることを想定した場所です。”0′′に設定しなければなりません。16ビットの符号付き2進数を使用します。左端は”-32768′′から、右端”+32767′′で表されます。前面投影で使用することが想定されています。16ビットの符号付き2進数を使用します。下端は”-32768′′から、上端”+32767′′で表されます。前面投影で使用することが想定されています。2進数で表現した1バイト(8ビット)のデータ列のうち、最上位(MSB)側の2ビットを使用します。最上位の1ビットは、ラストポイントビットを表します。このビットが”1′′になった場合に、データの終わりを示します。既存のシステムとの互換性を保つために、最後のポイントではラストポイントビットを”1′′にする必要があります。最上位から2番目のビットは、ブランキングビットを表します。このビットが”1′′になった場合に、レーザーをOFF(ブランク状態)にする必要があります。“0”の場合はレーザーをON(描画状態)にします。最下位(LSB)側の6ビットは今後使用されることが想定されているため、すべて”0′′にする必要があります。8ビットの値はカラーパレットに使用されます。詳細はページ下部の内蔵カラーパレットを参照してください。最後のポイントが書かれるまで繰り返します。次のILDAヘッダが続きます。25-26)が”0′′のイメージヘッダが続くのであれば、ファイルの終わりが示され、閉じることが可能になります。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。フォーマットコード”0′′は、3次元座標イメージセクションを示します。フレーム名を8バイトのASCII文字列で示します。作成した会社名を8バイトのASCII文字列で示します。このフレームの総ポイント数を”1′′から”65535′′の範囲で表記します。総ポイント数が”0′′の場合はイメージヘッダは最後まで続きますが、ファイルの終わりとなるために、次に続くデータはありません。アニメーションとして動作させる場合などフレーム(セクション)が複数存在する場合、フレーム番号を”0′′から最大”65535′′までの範囲で表記します。総フレーム数を”1′′から”65535′′の範囲で表します。このフレームを表示させるためのスキャナーヘッド、もしくはプロジェクターの番号。複数のプロジェクターを用意して別々に表示させるために使用します。範囲は”0′′から”255′′です。今後、使用されることを想定した場所です。”0′′に設定しなければなりません。16ビットの符号付き2進数を使用します。左端は”-32768′′から、右端”+32767′′で表されます。前面投影で使用することが想定されています。16ビットの符号付き2進数を使用します。下端は”-32768′′から、上端”+32767′′で表されます。前面投影で使用することが想定されています。16ビットの符号付き2進数を使用します。最後面(スクリーン背面)”-32768′′から、最前面(スクリーン前面)”+32767′′で表されます。2次元座標イメージセクションとの差異は、このZ座標の2バイトとフォーマットコードです。2進数で表現した1バイト(8ビット)のデータ列のうち、最上位(MSB)側の2ビットを使用します。最上位の1ビットは、ラストポイントビットを表します。このビットが”1′′になった場合に、データの終わりを示します。既存のシステムとの互換性を保つために、最後のポイントではラストポイントビットを”1′′にする必要があります。最上位から2番目のビットは、ブランキングビットを表します。このビットが”1′′になった場合に、レーザーをOFF(ブランク状態)にする必要があります。“0”の場合はレーザーをON(描画状態)にします。最下位(LSB)側の6ビットは今後使用されることが想定されているため、すべて”0′′にする必要があります。8ビットの値はカラーパレットに使用されます。詳細はページ下部の内蔵カラーパレットを参照してください。最後のポイントが書かれるまで繰り返します。次のILDAヘッダが続きます。25-26)が”0′′のイメージヘッダが続くのであれば、ファイルの終わりが示され、閉じることが可能になります。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。フォーマットコード”2′′は、カラーパレットセクションを示します。フレーム名を8バイトのASCII文字列で示します。作成した会社名を8バイトのASCII文字列で示します。今後、使用されることを想定した場所です。”0′′に設定しなければなりません。for.このフレームを表示させるためのスキャナーヘッド、もしくはプロジェクターの番号。複数のプロジェクターを用意して別々に表示させるために使用します。範囲は”0′′から”255′′です。今後、使用されることを想定した場所です。”0′′に設定しなければなりません。25-26.内蔵カラーパレットについてカラーパレットセクションを含んでいない座標イメージデータを読み込むときに必要になります。ILDAスタンダードパレットをメインに、各ソフトウェア別に様々なパレットが存在します。本家、ILDA規格書。ILDA規格、ILDAスタンダードパレット、プログラムでの実装方法など。ILDA規格、プログラムでの実装方法、サンプルILDAファイル配布。ILDAテストパターンファイル配布。その他、ILDA関係ファイルダウンロード。その他カラーパレットの詳細。ソフトウェアダウンロード後、”.pal”ファイル参照。AutoTraceへのILDAファイル出力実装。この文章は正式な物ではありません。Association本家のILDA規格書を翻訳、+αとして自分用にまとめたものです。以下、ILDA規格によるILDAファイルフォーマットのメモとなります。Format”と呼びます。Files”と呼びます。Files”を”ILDAファイル”と説明します。ILDAファイルは以下のセクションから構成されているファイルです。バイトオーダーILDAフォーマットでは1バイトでは表わしきれない数(256以上)を扱うことがあります。複数のバイトにまたがって値が代入されている場合には、リトルエンディアンではなくビッグエンディアンの扱いとなります。00000000は、10進数で255ではなく、65280を表します。想定外のセクション現段階で想定されていないセクションが登場した場合には、次のセクションまでスキップする必要があります。具体的には存在しないフォーマットコードの指定、データ長指定より多いデータの混入などが挙げられます。ILDA規格では、カラーパレットヘッダを使うことを推奨しています。以前の規格には内蔵カラーパレットが定められており、1バイトの値で最大256の色を決定することが可能です。互換性が無いということを配慮しなければなりません。内蔵カラーパレットの詳細はページ下部に記載します。ILDAセクション以下のセクションヘッダは最も一般的なセクションとなります。5-8バイト中に示されるフォーマットコードによってセクションの構造が異なる場合があります。各フォーマットコードごとのセクション説明を参照してください。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。Color)対応表(実際のところ下1桁しか使用されない。上位3バイトは0固定と考えてしまって問題ない。フォーマットコードが”3”以上の場合に使用されます。(0-2の場合は、セクションごとの説明を参照)13バイト目から、データの長さをバイト数で示します。このヘッダに続くデータが配置されます。(フォーマットコード:3)このセクションは座標イメージに対する色情報のため、座標イメージのセクションを続けて記述しなければなりません。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。Colorセクションを示します。13バイト目から、データの長さをバイト数で示します。このフレームの総ポイント数を示します。対応するセクションの総ポイント数と一致しなければならない。ポイント数が”0”であればファイルの終わりということになります。赤色レーザーの強度を示す、符号なし8ビットの値。値は”0”(消灯)から”255”(完全な赤)まで変化します。緑色レーザーの強度を示す、符号なし8ビットの値。値は”0”(消灯)から”255”(完全な緑)まで変化します。青色レーザーの強度を示す、符号なし8ビットの値。値は”0”(消灯)から”255”(完全な青)まで変化します。最後のポイントまで以上の情報を繰り返します。次のILDAヘッダが続きます。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。フォーマットコード”1”は、2次元座標イメージセクションを示します。フレーム名を8バイトのASCII文字列で示します。作成した会社名を8バイトのASCII文字列で示します。このフレームの総ポイント数を”1”から”65535”の範囲で表記します。総ポイント数が”0”の場合はイメージヘッダは最後まで続きますが、ファイルの終わりとなるために、次に続くデータはありません。アニメーションとして動作させる場合などフレーム(セクション)が複数存在する場合、フレーム番号を”0”から最大”65535”までの範囲で表記します。総フレーム数を”1”から”65535”の範囲で表します。このフレームを表示させるためのスキャナーヘッド、もしくはプロジェクターの番号。複数のプロジェクターを用意して別々に表示させるために使用します。範囲は”0”から”255”です。今後、使用されることを想定した場所です。”0”に設定しなければなりません。16ビットの符号付き2進数を使用します。左端は”-32768”から、右端”+32767”で表されます。前面投影で使用することが想定されています。16ビットの符号付き2進数を使用します。下端は”-32768”から、上端”+32767”で表されます。前面投影で使用することが想定されています。2進数で表現した1バイト(8ビット)のデータ列のうち、最上位(MSB)側の2ビットを使用します。最上位の1ビットは、ラストポイントビットを表します。このビットが”1”になった場合に、データの終わりを示します。既存のシステムとの互換性を保つために、最後のポイントではラストポイントビットを”1”にする必要があります。最上位から2番目のビットは、ブランキングビットを表します。このビットが”1”になった場合に、レーザーをOFF(ブランク状態)にする必要があります。“0”の場合はレーザーをON(描画状態)にします。最下位(LSB)側の6ビットは今後使用されることが想定されているため、すべて”0”にする必要があります。8ビットの値はカラーパレットに使用されます。詳細はページ下部の内蔵カラーパレットを参照してください。最後のポイントが書かれるまで繰り返します。次のILDAヘッダが続きます。25-26)が”0”のイメージヘッダが続くのであれば、ファイルの終わりが示され、閉じることが可能になります。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。フォーマットコード”0”は、3次元座標イメージセクションを示します。フレーム名を8バイトのASCII文字列で示します。作成した会社名を8バイトのASCII文字列で示します。このフレームの総ポイント数を”1”から”65535”の範囲で表記します。総ポイント数が”0”の場合はイメージヘッダは最後まで続きますが、ファイルの終わりとなるために、次に続くデータはありません。アニメーションとして動作させる場合などフレーム(セクション)が複数存在する場合、フレーム番号を”0”から最大”65535”までの範囲で表記します。総フレーム数を”1”から”65535”の範囲で表します。このフレームを表示させるためのスキャナーヘッド、もしくはプロジェクターの番号。複数のプロジェクターを用意して別々に表示させるために使用します。範囲は”0”から”255”です。今後、使用されることを想定した場所です。”0”に設定しなければなりません。16ビットの符号付き2進数を使用します。左端は”-32768”から、右端”+32767”で表されます。前面投影で使用することが想定されています。16ビットの符号付き2進数を使用します。下端は”-32768”から、上端”+32767”で表されます。前面投影で使用することが想定されています。16ビットの符号付き2進数を使用します。最後面(スクリーン背面)”-32768”から、最前面(スクリーン前面)”+32767”で表されます。2次元座標イメージセクションとの差異は、このZ座標の2バイトとフォーマットコードです。2進数で表現した1バイト(8ビット)のデータ列のうち、最上位(MSB)側の2ビットを使用します。最上位の1ビットは、ラストポイントビットを表します。このビットが”1”になった場合に、データの終わりを示します。既存のシステムとの互換性を保つために、最後のポイントではラストポイントビットを”1”にする必要があります。最上位から2番目のビットは、ブランキングビットを表します。このビットが”1”になった場合に、レーザーをOFF(ブランク状態)にする必要があります。“0”の場合はレーザーをON(描画状態)にします。最下位(LSB)側の6ビットは今後使用されることが想定されているため、すべて”0”にする必要があります。8ビットの値はカラーパレットに使用されます。詳細はページ下部の内蔵カラーパレットを参照してください。最後のポイントが書かれるまで繰り返します。次のILDAヘッダが続きます。25-26)が”0”のイメージヘッダが続くのであれば、ファイルの終わりが示され、閉じることが可能になります。ASCII文字列で”ILDA”を示します。これはILDAセクションのヘッダとして認識されます。32ビット、ビッグエンディアン。フォーマットコード”2”は、カラーパレットセクションを示します。フレーム名を8バイトのASCII文字列で示します。作成した会社名を8バイトのASCII文字列で示します。今後、使用されることを想定した場所です。”0”に設定しなければなりません。for.このフレームを表示させるためのスキャナーヘッド、もしくはプロジェクターの番号。複数のプロジェクターを用意して別々に表示させるために使用します。範囲は”0”から”255”です。今後、使用されることを想定した場所です。”0”に設定しなければなりません。25-26.内蔵カラーパレットについてカラーパレットセクションを含んでいない座標イメージデータを読み込むときに必要になります。ILDAスタンダードパレットをメインに、各ソフトウェア別に様々なパレットが存在します。本家、ILDA規格書。ILDA規格、ILDAスタンダードパレット、プログラムでの実装方法など。ILDA規格、プログラムでの実装方法、サンプルILDAファイル配布。ILDAテストパターンファイル配布。その他、ILDA関係ファイルダウンロード。その他カラーパレットの詳細。ソフトウェアダウンロード後、”.pal”ファイル参照。AutoTraceへのILDAファイル出力実装。Generator.。