| 名称 | MIRS1301 地図ライブラリ詳細設計書 |
|---|---|
| 番号 | MIRS1301-SOFT-0007 |
最終更新日:2013.02.18
| 版数 | 最終更新日 | 作成 | 承認 | 改訂記事 |
|---|---|---|---|---|
| A01 | 2013.02.18 | 高原一真 | 青木先生 | 初版 |
本ドキュメントは、MIRS1301の地図ライブラリの詳細設計書である。
| 修飾子 | 名称 | 概要 |
|---|---|---|
| typedef enum {...} | MapObjectType | マップ上のオブジェクトの種類 |
| 値 | 説明 | |
| MAP_OBJECT_NONE | 何もない | |
| MAP_OBJECT_START | スタート地点 | |
| MAP_OBJECT_POLE | 柱 | |
| MAP_OBJECT_LANTERN | 灯籠(宝の台座) | |
| MAP_OBJECT_TREASURE | 宝 | |
| MAP_OBJECT_UNKOWN | 未知 |
| 修飾子 | 名称 | 概要 |
|---|---|---|
| typedef struct {...} | MapSection | 1区画分のデータ |
| 型 | メンバ名 | 説明 |
| Point | .center | 座標 |
| int | .row | 行 |
| int | .col | 列 |
| MapObjectType | .object | 設置物 |
| int | .wall.north | 北側の壁の有無(0 or 1) |
| int | .wall.east | 西側の壁の有無(0 or 1) |
| int | .wall.west | 東側の壁の有無(0 or 1) |
| int | .wall.south | 南側の壁の有無(0 or 1) |
| 修飾子・型 | 名称 | 概要 |
|---|---|---|
| #define | MAP_ROWS_MAX | マップの最大サイズ |
| #define | MAP_COLS_MAX | マップの最大サイズ |
| #define | MAP_POLE_RADIUS | 柱の半径 |
| #define | MAP_LANTERN_WIDTH | 灯籠の幅 |
| 修飾子・戻値 | 名称・引数 | 概要 |
|---|---|---|
| int | mapOpen(char* fileName) | マップデータのインポート |
| void | mapClose() | マップデータの破棄 |
| int | mapGetRows() | 行数の取得 |
| int | mapGetCols() | 列数の取得 |
| Point | mapGetSectionSize() | 1区画の大きさの取得 |
| MapSection | mapGetSection(int row, int col) | 区画情報の取得 |
| MapSection | mapGetErrorSection() | エラーを意味する区画情報の取得 |
| MapSection | maoGetSectionAt(Point p) | 区画情報の取得 |
| int | mapSetSection(MapSection s) | 区画情報の変更 |
| int | mapSectionIsError(MapSection s) | エラー値を意味するデータか判定する |
| int | mapHasClearSpace(MapSection s1, MapSection s2) | 区画間を結ぶ直線上に障害物が無いか判定する |
| void | mapPrint(int offsetLines, int offsetCols) | 標準出力にマップを出力する |
| int | mapInitRoutes() | ルート情報を初期化する |
| void | mapDestroyRoutes() | ルート情報を破棄する |
| Point | mapGetNextPoint(Point start, Point target) | 次に行くべき座標を取得する |
| int | mapGetRoute(Point start, Point target, Point* point, int size) | ルート情報を取得する |
| double | mapGetRouteLength(Point start, Point target) | ルートの全長を取得する |
| double | mapGetDistanceToWall(Line line) | 地図上における壁までの距離を取得する |
ダウンロード先: MIRS1301 ソフトウェア詳細設計書