Matlab中对三维图进行视角观察设置——相机视线函数view

1.view函数的功能:相机视线;2.view函数的调用语法:

当我们采用matlab中的surf函数等绘制好三维图像后,想观察某个角度的图像时,可采用view函数快速多角度便捷设置,下面介绍相机视线函数view的用法:

1.view函数的功能:相机视线;

2.view函数的调用语法:

2.1 为当前坐标区设置相机视线的方位角和仰角

%%

view(az,el)

要理解该程序,首先要熟悉az和el是什么,在空间中代表哪两个角,怎样定义的。下面看一张坐标系,箭头指示正方向。 az即方位角Azimuth,方位角是 x-y 平面上的极坐标角,正值表示按逆时针方向旋转视点。如图所示 el即仰角Elevation,仰角是位于 x-y 平面上方(正)或下方(负)的角度。如上图所示。

2.2 根据 v(二元素或三元素数组)设置视线

view(v)

(1)v为二元素数组 - 其值分别是方位角和仰角。 (2)v为三元素数组 - 其值是从图框中心点到相机位置所形成向量的 x、y 和 z 坐标。MATLAB® 使用指向同一方向的单位向量计算方位角和仰角

2.3 对二维或三维绘图使用默认视线。对默认二维视图,将 dim 指定为 2,对于默认三维视图,指定为 3。

view(dim)

2.4 指定目标坐标区的视线

view(ax,___)

例子:

t = 0:pi/20:10*pi;

xt1 = sin(t);

yt1 = cos(t);

tiledlayout(1,2)

% Left plot

ax1 = nexttile;

plot3(ax1,xt1,yt1,t)

xlabel('X')

ylabel('Y')

zlabel('Z')

% Right plot

ax2 = nexttile;

plot3(ax2,xt1,yt1,t)

xlabel('X')

ylabel('Y')

zlabel('Z')

运行结果为: 对其右边子图进行视角调整

view(ax2,[90 0]);

运行结果为

2.5 将方位角和仰角返回为 caz 和 cel

[caz,cel] = view(___)

例如:

[X,Y] = meshgrid(-5:.5:5);

Z = Y.*sin(X) - X.*cos(Y);

surf(X,Y,Z)

xlabel('X')

ylabel('Y')

zlabel('Z')

运行得到如下图

再运行[caz,cel] = view(___)指令

[caz,cel] = view

得到:

相关链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: