/**
  * テーブル操作関数です。{@link NyARCode}を元にして、テーブルにマーカパターンを追加します。
  *
  * @param i_code ARToolKit形式のパターンコードを格納したオブジェクト。このオブジェクトは、関数成功後はインスタンスが所有します。
  *     パターンコードの解像度は、コンストラクタに指定した高さと幅である必要があります。
  * @param i_id このマーカを識別する、ユーザ定義のID値です。任意の値を指定できます。不要な場合は0を指定してください。
  * @param i_name ユーザ定義の名前です。任意の値を指定できます。不要な場合はnullを指定して下さい。
  * @param i_width 実際のマーカの高さです。[通常mm単位]
  * @param i_height 実際のマーカの幅です。[通常mm単位]
  * @return 登録に成功すると、trueを返します。
  */
 public boolean addMarker(
     NyARCode i_code, int i_id, String i_name, double i_width, double i_height) {
   assert (i_code.getHeight() == this._resolution_height
       && i_code.getHeight() == this._resolution_width);
   MarkerTable.SerialTableRow d = this._table.prePush();
   if (d == null) {
     return false;
   }
   d.setValue(i_code, i_id, i_name, i_width, i_height);
   return true;
 }
 /**
  * テーブル操作関数です。ARToolkit準拠のパターンファイルを読み込み、テーブルへ追加します。
  *
  * @param i_filename パターンファイルのファイルパスを指定します。
  * @param i_id このマーカを識別するユーザ定義のID値です。任意の値を指定できます。不要な場合は0を指定してください。
  * @param i_name ユーザ定義の名前です。任意の値を指定できます。不要な場合はnullを指定して下さい。
  * @param i_width 実際のマーカの高さです。[通常mm単位]
  * @param i_height 実際のマーカの幅です。[通常mm単位]
  * @return 登録に成功すると、trueを返します。
  * @throws NyARException
  */
 public boolean addMarkerFromARPattFile(
     String i_filename, int i_id, String i_name, double i_width, double i_height)
     throws NyARException {
   MarkerTable.SerialTableRow d = this._table.prePush();
   if (d == null) {
     return false;
   }
   NyARCode c = new NyARCode(this._resolution_width, this._resolution_height);
   c.loadARPattFromFile(i_filename);
   d.setValue(c, i_id, i_name, i_width, i_height);
   return true;
 }
 /**
  * テーブル操作関数です。{@link NyARRgbRaster}クラスのオブジェクトからマーカパターンを生成して、テーブルへ追加します。方位は、上方向がdirection=0になります。
  *
  * @param i_raster マーカパターンの元となるラスタを指定します。解像度は、コンストラクタで指定したものと同じでなければなりません。
  * @param i_id このマーカを識別するユーザ定義のID値です。任意の値を指定できます。不要な場合は0を指定してください。
  * @param i_name ユーザ定義の名前です。任意の値を指定できます。不要な場合はnullを指定して下さい。
  * @param i_width 実際のマーカの高さです。[通常mm単位]
  * @param i_height 実際のマーカの幅です。[通常mm単位]
  * @return 登録に成功すると、trueを返します。
  * @throws NyARException
  */
 public boolean addMarker(
     NyARRgbRaster i_raster, int i_id, String i_name, double i_width, double i_height)
     throws NyARException {
   MarkerTable.SerialTableRow d = this._table.prePush();
   if (d == null) {
     return false;
   }
   NyARCode c = new NyARCode(this._resolution_width, this._resolution_height);
   c.setRaster(i_raster);
   d.setValue(c, i_id, i_name, i_width, i_height);
   return true;
 }