メインコンテンツ

カメラ ツールを使用した視点の制御

カメラ ツールを使用して、一連の 3 次元座標軸のカメラ モーション モード、主軸、投影タイプ、および再生設定を対話的に設定できます。カメラ ツールを表示するには、Figure の [ツール] タブで [カメラ ツール] をクリックします。あるいは、cameratoolbar 関数を使用します。

Camera tools for camera motion, principal axis, projection type, and resetting and stopping

メモ

既定では、MATLAB® は Figure ウィンドウに合った縦横比でプロットを表示します。この動作により、シーンの周りを回転するようにカメラを移動すると、3 次元グラフィックスに歪みが生じることがあります。歪みが発生しないようにするために、座標軸をクリックすると、カメラ ツールによって座標軸が自動的に 3 次元可視化モードに切り替えられます。あるいは、コマンド axis vis3d を使用して 3 次元可視化モードを有効にすることもできます。

カメラ モーション コントロール

カメラ モーション モードにより、カメラの座標軸を対話的に操作できます。[カメラ] タブのボタンを選択して、カメラ モーション モードを設定します。あるいは、コマンド cameratoolbar("SetMode",mode) を使用してモードを指定します。

次の表の図に示されている動きでは、カメラはカメラのターゲットに向けられたままです。カメラの動きに関するグラフィックス プロパティの説明については、カメラ グラフィックス用語を参照してください。

カメラ モーション モード
  • 名前: 旋回移動

  • cameratoolbar モード: "orbit"

  • 説明: 軸を中心にカメラを回転させます。既定では、z 軸を中心に回転させます。あるいは、主軸セレクターを使用して x 軸回転、y 軸回転、z 軸回転、または軸を指定しない回転を選択します。

  • グラフィックス プロパティ: このモードでは、Axes CameraTarget を固定した状態で Axes CameraPosition プロパティが変更されます。

Graphics object response to camera orbit

  • 名前: 傾斜

  • cameratoolbar モード: "pan"

  • 説明: カメラを固定した状態で、カメラが向けられるシーン内の点を移動します。既定では、z 軸を中心に円弧を描いてターゲットを移動します。あるいは、主軸セレクターを使用して x 軸回転、y 軸回転、z 軸回転、または軸を指定しない回転を選択します。

  • グラフィックス プロパティ: このモードでは、Axes CameraTarget プロパティが変更されます。

Graphics object response to camera pan and tilt

  • 名前: パン

  • cameratoolbar モード: "dollyhv"

  • 説明: カーソルと同じ水平方向および垂直方向にシーンを移動します。

  • グラフィックス プロパティ: このモードでは、Axes CameraPosition および CameraTarget プロパティで定義された点を平行線に沿って同時に移動します。

Graphics object response to camera horizontal and vertical motion

  • 名前: 水平移動

  • cameratoolbar モード: "dollyfb"

  • 説明: この動きでは、カーソルを上または右に移動するとカメラがシーンに近づき、カーソルを下または左に移動するとカメラがシーンから遠ざかります。カメラはシーンの対象物の内部を通って、またカメラのターゲットの反対側に移動することができます。

  • グラフィックス プロパティ: このモードでは、Axes CameraPosition プロパティで定義された点を、カメラの位置とカメラのターゲットを結んだ線に沿って移動します。

Graphics object response to camera forward and backward motion

  • 名前: ズーム

  • cameratoolbar モード: "zoom"

  • 説明: カーソルを上または右に移動するとシーンが大きくなり、カーソルを下または左に移動するとシーンが小さくなります。ズーミングはカメラを移動しないので、シーンのオブジェクトを通過して視点を移動することはできません。

  • グラフィックス プロパティ: このモードでは、Axes CameraViewAngle プロパティが変更されます。角度が大きいほど、シーンは小さくなります。

Graphics object response to camera zoom

  • 名前: 回転

  • cameratoolbar モード: "roll"

  • 説明: 視点軸を中心にカメラを回転して、画面上で視点を回転します。

  • グラフィックス プロパティ: このモードでは、Axes CameraUpVector プロパティが変更されます。

Graphics object response to camera roll

主軸セレクター

シーンの主軸は画面の上向きの方向を定義し、主軸に平行な軸および垂直な軸に沿ったカメラの動きを制限します。特定の軸に定義されたデータがある場合には、主軸の指定が役立ちます。

カメラの旋回移動モードおよびカメラのパン/傾斜モードは、特定の軸を基準として動作します。[カメラ] タブで、制限された動きについて、主軸 ([X を主軸にする] 、[Y を主軸にする] 、または [Z を主軸にする] ) を選択するか、軸なし ([主軸を指定しない] ) を選択します。

3 次元表示の既定の主軸である z 軸の場合、次のようになります。

  • 水平方向にカーソルを動かすと、CameraTarget プロパティで定義された点を通り、z 軸に平行な縦軸を中心にカメラが回転します。

  • 垂直方向にカーソルを動かすと、z 軸と、CameraTarget および CameraPosition プロパティによって定義される点を通る線によって定義される平面に垂直な横軸を中心にカメラが回転します。

3-D axes, using Principal Axis Z, with vertical and horizontal axes for rotation

シーンライト

シーンライトは、座標軸内の patch オブジェクトおよび surface オブジェクトに光を当てます。座標軸にはシーンライトを 1 つだけ含めることができます。このモードでは、Light Position プロパティが変更されます。

光源の作成および切り替えを行うには、Figure の [Figure] タブで [ラベルと注釈]、[ライト] を選択します。

シーンライトを旋回移動するには、[ツール] タブの [カメラ ツール] をクリックしてカメラ ツールを表示します。次に、座標軸を右クリックし、コンテキスト メニューで [カメラ モーション]、[シーンライトの旋回移動] を選択します。あるいは、cameratoolbar 関数を使用して "orbitscenelight" モードを指定します。

投影タイプ

MATLAB は、グラフィカルな投影を使用して 2 次元画面上に 3 次元オブジェクトを表示します。[カメラ] タブで [正投影] または [透視投影] を選択して、投影タイプを切り替えます。既定では、投影タイプは正投影です。

  • 正投影は、直方体 (6 つの長方形の面をもつ箱) として表示ボリュームを投影します。カメラからの相対距離により、オブジェクトのサイズが変わることはありません。この投影タイプは、オブジェクトの実際のサイズとオブジェクト間の角度を維持する場合に有用です。

  • 透視投影は、角錐台 (頂点が底面と平行に切断された角錐) として表示ボリュームを投影します。遠くのものは奥行きが短くなります。つまり、カメラから遠いオブジェクトは小さく見えます。この投影タイプは、実際のオブジェクトをリアリティのあるビューで表示したいときに有用です。

詳細については、投影法についてを参照してください。

リセットと停止

カメラおよびシーンライトをリセットまたは停止するには、[カメラ] タブで [シーンのリセット] または [モーションの停止] を選択します。

  • リセットすると、カメラおよびライトは操作開始時の状態に戻ります。

  • 停止すると、カメラおよびライトの移動が停止します。これは、カーソルの移動が大きすぎた場合に役立ちます。

参考

関数

プロパティ

トピック