MATLAB提供了设置视点的函数view。其调用格式为:
view(az,el)
az是azimuth(方位角)的缩写,EL是elevation(仰角)的缩写。它们均以度为单位。系统缺省的视点定义为方位角-37.5°,仰角30°。
当x轴平行观察者身体,y轴垂直于观察者身体时,az=0; 以此点为起点,绕着z轴顺时针运动,az为正,逆时针为负。
EL 为观察者眼睛与xy平面形成的角度。
当观察者的眼睛在xy平面上时,el=0; 向上el为正,向下为负;
下面是一些例子:
AZ = -37.5, EL = 30 是默认的三维视角.
AZ = 0, EL = 90 是2维视角,从图形正上方向下看,显示的是xy平面.
AZ = EL = 0 看到的是xz平面.
AZ = 180,EL=0
是从背面看到的xz平面.
VIEW(2) 设置默认的二维视角, AZ = 0, EL = 90.
VIEW(3) 设置默认的三维视角, AZ = -37.5, EL = 30.
VIEW([X Y Z]) 设置Cartesian坐标系的视角,[X Y Z]向量的长度大小被忽略.
[AZ,EL] = VIEW 返回当前的方位角和仰角.
例子1:从不同视点绘制多峰函数曲面
subplot(2,2,1);mesh(peaks);
view(-37.5,30);
%指定子图1的视点
title('azimuth=-37.5,elevation=30')
subplot(2,2,2);mesh(peaks);
view(0,90);
%指定子图2的视点
title('azimuth=0,elevation=90')
subplot(2,2,3);mesh(peaks);
view(90,0);
%指定子图3的视点
title('azimuth=90,elevation=0')
subplot(2,2,4);mesh(peaks);
view(-7,-10);
%指定子图4的视点
title('azimuth=-7,elevation=-10')
例子2:旋转观察多峰函数曲面
mesh(peaks); %绘制多峰函数
el=30;
%设置仰角为30度。
for az=0:1:360
%让方位角从0变到360,绕z轴一周
view(az,el);
drawnow;
end
az= 0;
%设置方位角为0
for el=0:1:360
%仰角从0变到360
view(az,el);
drawnow;
end