三维旋转心形图(matlab 含源码及注释)

您所在的位置:网站首页 如何用珠子编立体爱心 三维旋转心形图(matlab 含源码及注释)

三维旋转心形图(matlab 含源码及注释)

2024-07-12 02:37| 来源: 网络整理| 查看: 265

一、二维心形线

(1)笛卡尔心形线,分为开口向左、右、上、下的四种。可用极坐标方程画图,在此不做演示。读者感兴趣或需要可自行百度查找。

(2)第二种心形线

方程:

实现代码:

ezplot('(x^2 + y^2 - 1)^3 = x^2*y^3',[-2,2,-2,2])

 (3)桃心形线

参数方程:

实现代码:

t=0:0.1:2*pi;x=16 * (sin(t)).^3;y=13 * cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t);plot(x,y,'r');

 (4)等等等,感兴趣的同学可以去自行搜索

二、三维旋转心形图

        了解了这么多二维的心形线,那么我们自然会想,是否可以画出三维的心形图形呢。答案当然是肯定的。,该三元方程如下。

         此时三维心形图已经画出,接下来我们可以将此三维图进行旋转处理。我使用的方法是使用for循环,每个一定时间旋转一定的角度,实现旋转。

 实现代码:

f=@(x,y,z)(x.^2 + (9./4).* y.^2 + z.^2 - 1).^3 - x.^2. * z.^3 - (9./80).* y.^2. * z.^3;  %方程[x,y,z]=meshgrid(linspace(-2,2));fun=f(x,y,z);isosurface(x,y,z,fun,0);                %绘制三维隐函数图像函数axis equal;                                   %将横轴纵轴的定标系数设成相同值,即刻度等长view(3);                                        %设置默认的三维视角colormap([1 0.1 0.1])                   %设置指定颜色图的图窗坐标区

for i=0:1:360                                %设置循环进行旋转    view(sin(i),cos(i))                     %前者是角度,后者是仰视角    view(i,20);    pause(0.02);end

实现效果在此不做演示,能转就完了,哈哈。

创作不易,如果该文章对您有所帮助,请留下宝贵一赞,如有问题可私信。谢谢!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3