1 of 18

museumProblem

Ver 1.00

2 of 18

Wall : 壁作成

AddCam : カメラ配置

MoveCam : カメラ移動

DelCam : カメラ除去

「ラジオボタン : どれか一つ選択」

初期 : Wallの選択状態

Clear : 真っ白に

ReadMap : 何も変化なし

RecogMap : マップ認識

Search : カメラの位置探索

「ボタン : クリックによる状態変化」

また、ボタンは以下の要領でボタンの種類が変化します。

初期状態

RecogMap後

Search後

ReadMap

RecogMap

RecogMap

RecogMap

Search

STOP

3 of 18

Wall :

左クリックで続けて壁を作成し、

右クリックで壁作成状態を終了させます。

既存の頂点(左クリックした点)に

マウスポインタを近づけると、

新しい点が接合されるような動作をします。

4 of 18

AddCam :

クリックした場所にカメラを配置します。

カメラは5個まで配置可能

(この時点では、色はつきません)

5 of 18

RecogMap :

マップを認識した後に、

カメラの見渡せる範囲に、

かつ、

その点において、距離が一番近いカメラの色が塗られます。

RecogMap後には、

「ReadMapボタン」が「RecogMapボタン」

へ変化し、「RecogMapボタン」は

「Searchボタン」へ変化します.

同時に、「InitMap.bmp」&「OutLineSeg.txt」

が出力されます。

(ReadMapをする際に必要なものです。)

6 of 18

MoveCam :

カメラをクリックし、

ドラッグすると同時に

カメラを移動させることができる。

移動中は、色が薄くなります。

7 of 18

DelCam :

除去したいカメラをクリック

することで、カメラを除去します。

8 of 18

Search :

最も近いカメラまでの距離の最大値の最小値(min-max)

において、カメラの良い場所

を探索します。

「Searchボタン」を押すと、

「STOPボタン」に変化します。

9 of 18

Search :

検索が開始されると、

「museum.exe」と

同じ階層に、[1]というフォルダが作成され、その中にbmpがたくさん作成されます。

10 of 18

Search :

このbmpファイルを「フォトギャラリー」のような画像を表示させるアプリで開くと右のようになります。

これは、マップ全体を指定されたカメラの個数で見渡せた様子を、出力させています。

また、ファイル名の命名規則ですが、「Res_N_maxDist.bmp」となっており、

Nは通し番号(0~N)、

maxDistは、最も近いカメラまでの最大の距離となっています。

最小のmaxDistのbmpファイルが今回求めたいマップに対するカメラの配置となります。

また、このmaxDistの部分を黒い直線で描画しています。

11 of 18

探索は、「STOPボタン」を押すことで停止できます。ファイル名のmaxDist部分の最小値が得られたカメラの位置となります。

また、初期値として「Searchボタン」を押したときの

カメラの配置を探索プログラムに入力させているので、

MoveCamでカメラの配置を変化させると、また違ったカメラの配置が出力されます。

12 of 18

連続してSearchを行った際、[2]、[3]、[4]、・・・のフォルダが作成され、

その中に結果のbmpファイル群が出力されます。

一度、プログラムを終了(ウィンドウの✕ボタンを押す)した場合、

再度[1]、からフォルダが作成されます。

その際に、既存の[1]フォルダが存在すると、エラーがでますので、

既存の[1]フォルダを削除してから、再度「Searchボタン」を押して下さい。

13 of 18

maxDistは小さくなっていきますが、ある状態を超えるとまた大きくなっていきます。その状態がしばらく続くと「Search Continue?」というメッセージボックス

が出ます。これはmaxDistが大きくなっても、さらに小さなmaxDistが求まる場合があるためです。「いいえ」ボタンを押すと探索を終了し、一番小さな

maxDistのカメラ状態にウィンドウを更新させます。

また、探索中にSTOPを押した場合、探索できた中から一番小さいmaxDist

のカメラの状態にウィンドウを更新させます。

ウィンドウが更新された状態からでも、カメラ位置移動、探索の開始など、

通常の動作をさせることは可能です。

14 of 18

Clear :

真っ白に初期化されます。

15 of 18

ReadMap :

保存されたマップを読み込みます。

RecogMap後に作成される

「InitMap.bmp」&「OutLineSeg.txt」

を読み込みます。

16 of 18

  • Ver0.01
    • 初期バージョン
  • Ver0.02
    • カメラの色に関する不具合修正
  • Ver0.03
    • ウィンドウサイズを変更
    • 壁(Wall)の作成方法を変更
  • Ver0.04
    • 描画系不具合を修正

17 of 18

  • Ver0.05
    • リファクタリング
  • Ver0.06
    • Min-maxカメラ探索実装・Bitmap出力実装
  • Ver0.07
    • カメラ探索バグ修正
  • Ver0.08
    • Wall作成時の頂点接合処理追加
  • Ver0.09
    • マップの読み込み/Bitmap読み込み処理追加
  • Ver0.10
    • リファクタリング

18 of 18

  • Ver0.11
    • maxDistを与える点を描画させる処理の追加
  • Ver0.12
    • 探索で求めた一番小さいmaxDistの状態をウィンドウに更新させる処理の追加

  • Ver1.00
    • ソースコード納品