matlab 球体的绘制 柱面坐标系法 球面坐标系法

算法原理

参考二维圆的画法我们可以采用柱面坐标系的方法,在z轴上用依次绘制不同半径的圆来形成一个球,在这个过程中我们要用到矩阵外积的思想,将圆的余弦值或者正弦值与半径进行外积,形成一个二维矩阵,矩阵的第二维度中的每个向量储存每个小圆的信息。所以我们可以先把存储半径信息的矩阵展开,然后与存储余弦值的矩阵进行矩阵乘法,得到存储坐标信息的矩阵。

柱面坐标系法

代码如下:

theta = 0.:0.01:2*pi;
h = -1.:0.01:1.;
r = sqrt(1-h.*h);
x = cos(theta(:))*r(:)';
y = sin(theta(:))*r(:)';
z = ones(size(theta(:)))*h(:)';
surf(x,y,z,z)

在这里插入图片描述

球面坐标系法

theta = 0.:0.05:2*pi;
R = 10;
fi = 0:0.05:pi;
x = R*cos(theta(:))*sin(fi(:))';
y = R*sin(theta(:))*sin(fi(:))';
z = R*ones(size(theta(:)))*cos(fi(:))';
mesh(x,y,z);

在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值