MATLAB旋转体的绘制
使用mesh绘制旋转体
原理:绘制旋转体,在于确定旋转的曲线以及所要绕着旋转的轴。例如,将一个YoZ平面上的半圆:z^2+(y-r)^2 = 1(z>=0)绕z轴旋转而成的旋转体。示意图如下:
当绕z轴旋转alpha角度时(实际是逆时针旋转,这里为方便观察画成顺时针),z坐标不变,y坐标变为y*cos(alpha),x坐标为y*sin(alpha),使用mesh绘图时,需要提供所有点的坐标,使用矩阵形式。如果是alpha为0,则是对应的一个半圆的坐标,为1,又是一个。所以使用列向量乘以行向量,得到若干半圆的坐标。先画4个半圆观察一下:
r = 2;
y = linspace(r,r+2,20);
z = sqrt(1-(y-1-r).^2);
alpha = 0:1:3;
X = y'*sin(alpha)
Y = y'*cos(alpha)
Z = z'*ones(1,4)