| MATLAB Function Reference | ![]() |
表示
camva
camva(view_angle)
camva('mode')
camva('auto')
camva('manual')
camva(axes_handle,...)
詳細
カメラの視点角度が、カメラの表示フィールドを設定します。角度が大きいと表示は小さくなります。カメラの視点角度を変更することで、ズーミングを実現できます。
は、引数を設定しない場合、カレントのaxesのカメラの視点角度の設定を出力します。camva
は、カレントのaxesの視点角度を指定した値に設定します。視点角度は、角度単位で指定してください。camva(view_angle)
camva('mode')
は、カレントのカメラの視点角度モードの値を出力します。これはauto(デフォルト)または manualです。"注意"を参照してください。
camva('auto')
は、カメラの視点角度モードをautoに設定します。
camva('manual')
は、カメラの視点角度モードをmanualに設定します。"注意"を参照してください。
camva(axes_handle,...)
は、最初の引数axes_handleで識別されるaxesの設定または取得を行います。axesのハンドル番号を指定しないときは、camvaはカレントのaxesで操作を行います。
注意
camva は、AxesオブジェクトのCameraViewAngleとCameraViewAngleModeプロパティの値を設定または取得します。
カメラの視点角度モードがautoのとき、MATLABは表示がウィンドウの使用可能なスペースを満たすようにカメラの視点角度を調整します。カメラを他の位置に移動すると、MATLABはウィンドウ内の使用可能な領域を満たす表示を保持するために、カメラの視点角度を変更します。
カメラの視点角度を設定するか、カメラの視点角度モードをmanualに設定すると、MATLABのstretch-to-fill機能(axesをウィンドウに合うように引き伸ばす)は使えなくなります。これは、カメラの視点角度をカレントの値
camva(camva)
に設定すると、その値がグラフが表示される通りに変更されることを意味します。 axesのリファレンスの"注意事項"と、Using MATLAB GraphicsマニュアルのViewの章を参照してください。
例題
つぎの例題は、拡大表示と縮小表示を行う2つのプッシュボタンを作成します。
uicontrol('Style','pushbutton',...
'String','Zoom In',...
'Position',[20 20 60 20],...
'Callback','if camva <= 1;return;else;camva(camva-1);end');
uicontrol('Style','pushbutton',...
'String','Zoom Out',...
'Position',[100 20 60 20],...
'Callback','if camva >= 179;return;else;camva(camva+1);end');
surf(peaks);
コールバックステートメント内の領域チェックに注意してください。これは、領域内のカメラの視点角度の値を、0より大きく、180未満に設定します。
参考
axis, camproj, campos, camup, camtarget
axes プロパティ CameraPosition, CameraTarget, CameraUpVector, CameraViewAngle, Projection
| camup | camzoom | ![]() |