一、二维心形线
(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
实现效果在此不做演示,能转就完了,哈哈。
创作不易,如果该文章对您有所帮助,请留下宝贵一赞,如有问题可私信。谢谢!