三维旋转心形图(matlab 含源码及注释) |
您所在的位置:网站首页 › 如何用珠子编立体爱心 › 三维旋转心形图(matlab 含源码及注释) |
一、二维心形线 (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 |