matlab二维图形绕轴旋转成三维图形

前言
帮妹妹画图,网上搜了半天才找到一个好用的,记录一下备用。

参考链接:https://wenda.so.com/q/1525785084216329

食用方法
我的x-y图形想要绕y轴旋转。首先把y标成z轴,然后画出x-z图形。

再通过乘以角度找到三维情况的x,y,z坐标。

例子
matlab二维图形绕轴旋转成三维图形_第1张图片

代码

x = linspace(0, 5, 5000).';
z = linspace(0, 0, 5000).';

cnt = 1;
for i=1:5000
    x(i)=(i-1)/1000;
    if x(i)<1
        z(i)=x(i)+2;
    else
        z(i)=-0.75*x(i)+3.75;
    end
end
subplot(1,2,1)
plot(x,z)
subplot(1,2,2)

%旋转曲面
n = 100;    % 旋转一周所取点的个数
theta = (0:n)/n*2*pi;
sintheta = sin(theta); sintheta(n+1) = 0;
X = x * cos(theta);
Y = x * sintheta;
Z = z * ones(1,n+1);

mesh(X,Y,Z)

你可能感兴趣的:(题解)