[Management of Area Map Module]


[開発環境]

	PC		: NEC Shield PRO
	OS		: Fedora 7 [Moonshine]
	OpenRTM-aist	: Ver.0.4.1
	開発言語	: C/C++


[コンフィギュレーション]

	01_robotmapaddress	: robotマップアドレス
	02_gui			: GUI動作
				  [off, on]
	03_guiaddress		: GUIプログラムアドレス
	04_ip			: IPアドレス
	05_sendport		: 送信ポート番号
	06_receiveport		: 受信ポート番号


[入力ポート]

	[TimedMapOrder]
				- [Time tm]						// タイムスタンプ
				- [unsigned short trigger]				// 動作トリガー
				- [unsigned short mode]					// アクセスモード
				- [sequence<char> location]				// 地域名
				- [sequence<char> mapset]				// 利用者マップセット名
				- [sequence<char> type]					// データタイプ
				- [long origin_x]					// 対象原点x座標 [mm]
				- [long origin_y]					// 対象原点y座標 [mm]
				- [unsigned long size_x]				// 対象範囲x座標 [mm]
				- [unsigned long size_y]				// 対象範囲y座標 [mm]


[出力ポート]

	[TimedMapData]
				- [Time tm]						// タイムスタンプ
				- [unsigned short mode]					// アクセスモード
				- [sequence<char> location]				// 地域名
				- [sequence<char> mapset]				// 利用者マップセット名
				- [sequence<char> type]					// データタイプ
				- [long origin_x]					// 対象原点x座標 [mm]
				- [long origin_y]					// 対象原点y座標 [mm]
				- [unsigned long size_x]				// 対象範囲x座標 [mm]
				- [unsigned long size_y]				// 対象範囲y座標 [mm]
				- [sequence<char> explanation]				// 地図説明
				- [long map_origin_x]					// 地図原点x座標 [mm]
				- [long map_origin_y]					// 地図原点y座標 [mm]
				- [unsigned long map_size_x]				// 地図サイズx座標 [mm]
				- [unsigned long map_size_y]				// 地図サイズy座標 [mm]
				- [unsigned long pixel_size_x]				// ピクセルサイズx座標 [mm]
				- [unsigned long pixel_size_y]				// ピクセルサイズy座標 [mm]
				- [sequence<char> category]				// カテゴリデータ
				- [sequence<unsigned long> mapdata]			// 地図データ
	[TimedArcNode]
				- [Time tm]						// タイムスタンプ
				- [sequence<Arc> arc_data]				// アークデータ
				- [sequence<Node> node_data]				// ノードデータ
	[TimedLandmark]
				- [Time tm]						// タイムスタンプ
				- [sequence<Line> line_data]				// 直線ランドマークデータ
				- [sequence<Circle> circle_data]			// 円ランドマークデータ


[GUI]


[注意]

	[一般]
	・動作トリガーが，0から1に変化した際，入力ポートの情報を元に処理を行います．
	  再度処理を行う場合は，一度0にリセットしてください．

	[ラスターデータ]
	・対象原点は，切り出す地図データの左下の頂点を表します．
	  対象範囲については，対象原点からの右上方向への範囲となります．
              ___       ___________________
	       |       |                   |
	       |       |                   |
	 対象範囲y座標 |                   |
	       |       | 対象原点(x, y)    |
	      _|_      @___________________|

	               |-- 対象範囲y座標 --|

	・指定範囲が地図データの範囲外である場合は，何も出力されません．
	・指定範囲が地図データの一部を切り取る形になる場合は，その部分を切り取る形で出力されます．
	・指定範囲の境界ラインの取扱いについては，その境界ラインが含まれるピクセルについても要求されたものとし，
	  ライン上のピクセルも含めて出力ポートから出力されます．
	・対象範囲のx座標・y座標の少なくともどちらか一方が0の場合は，地図情報のみを出力します．
	  地図情報のみを得たい場合に0を指定してください．
	・カラーテーブルのデータとbitmapのピクセルカラーがマッチしない場合は，RGBの値を出力します．
	  RGBの値を高さなどのスカラーデータとして使用する場合などに流用できます．

	  [RGBの値] = [redの値] << 16 + [greenの値] << 8 + [blueの値]

	・GUIにおいてカテゴリの最大表示は9個までです．
	  10個以上のカテゴリの場合は，10行目に[...etc]と表示されます．
	  10個目以降は，直接モジュールの出力ポートを監視してください．

	[ベクターデータ]
	・ノードIDは，必ず自然数(1から)の通し番号を使用してください．
	・説明は，半角英数字(最大256文字)を使用してください．
	・対象原点は，切り出す地図データの左下の頂点を表します．
	  対象範囲については，対象原点からの右上方向への範囲となります．
              ___       ___________________
	       |       |                   |
	       |       |                   |
	 対象範囲y座標 |                   |
	       |       | 対象原点(x, y)    |
	      _|_      @___________________|

	               |-- 対象範囲y座標 --|


[更新履歴:Module]
2009/11/04:UDP機能追加
2009/11/05:GUI機能追加
2009/11/05:GUIプログラム起動機能追加
2009/11/05:コンフィギュレーション追加
2009/11/06:コンフィギュレーション追加
2009/11/06:GUI動作切り替え機能追加
2009/11/06:入力ポート追加
2009/11/07:入力ポート読み取り追加
2009/11/07:UDPデータ送信追加
2009/11/07:動作トリガー機能追加
2009/11/08:ファイルヘッダ処理機能追加 [ラスターデータ]
2009/11/08:情報ヘッダ処理機能追加 [ラスターデータ]
2009/11/08:画像データ処理機能追加 [ラスターデータ]
2009/11/10:ヘッダファイル処理機能追加 [ラスターデータ]
2009/11/11:カテゴリファイル処理機能追加 [ラスターデータ]
2009/11/11:カラーテーブルファイル処理機能追加 [ラスターデータ]
2009/11/12:地図情報読み取り機能追加 [ラスターデータ]
2009/11/12:出力ポート追加 [ラスターデータ]
2009/11/12:出力ポート読み出し追加 [ラスターデータ]
2009/11/13:RGBデータ出力機能追加 [ラスターデータ]
2010/02/28:ヘッダファイル処理機能追加 [ベクターデータ]
2010/03/02:ノードサイズ取得処理機能追加 [ベクターデータ]
2010/03/02:アークサイズ取得処理機能追加 [ベクターデータ]
2010/03/02:ノードデータ読み取り機能追加 [ベクターデータ]
2010/03/02:アークデータ読み取り機能追加 [ベクターデータ]
2010/03/04:アークノードデータ指定範囲選定機能追加 [ベクターデータ]
2010/03/06:出力ポート追加 [ベクターデータ]
2010/03/06:出力ポート読み出し追加 [ベクターデータ]
2010/07/14:パディングバグ修正

[更新履歴:GUI]
2009/11/04:UDP機能追加
2009/11/05:コマンドライン引数動作機能追加
2009/11/13:ラベル追加
2009/11/14:フォント変更
2009/11/14:画像表示機能追加 [ラスターデータ]
2009/11/14:画像サイズ調整機能追加 [ラスターデータ]
2009/11/15:ヘッダファイル処理機能追加 [ラスターデータ]
2009/11/15:カテゴリファイル処理機能追加 [ラスターデータ]
2009/11/15:カラーテーブルファイル処理機能追加 [ラスターデータ]
2009/11/15:抽出箇所表示機能追加 [ラスターデータ]
2009/11/15:アイコン追加
2010/03/07:ヘッダファイル処理機能追加 [ベクターデータ]
2010/03/07:ノードファイル処理機能追加 [ベクターデータ]
2010/03/07:アークファイル処理機能追加 [ベクターデータ]
2010/03/17:抽出箇所表示機能追加 [ベクターデータ]
