利用MATLAB制作各种心形
最近闲来无事,整理了一些采用MATLAB软件来绘制心形的代码:
1、
>> [x,y,z]=meshgrid(linspace(-1.3,1.3));
>> val=(x.^2+(9/4)*y.^2+z.^2-1).^3-x.^2.*z.^3-(9/80)*y.^2.*z.^3;
>> isosurface(x,y,z,val,0)
>> axis equal
>> view(-10,24)
>> colormap flag
>> camlight
>> lighting phong
2、
>> b=0:0.01*pi:2*pi;
>> a=2;
>> r=a*(1-sin(b));
>> h=polar(b,r,'r');
>> set(h,'LineWidth',6);
3、
>> a=ezplot('17*x^2-16*abs(x)*y+17*y^2-225');
>> set(a,'color','r','LineWidth',6);
4、
>> [x,y]=meshgrid(-5:0.01:5,-5:0.01:5);
>> v=17*x.^2-16*abs(x).*y+17*y.^2+150./abs(5*x+sin(5*y))<225;
>> contourf(x,y,v);
>> colormap(jet);
5、
>> [X,Y,Z] = meshgrid(linspace(-3,3,101));
>> F = -X.^2.*Z.^3-(9/80).*Y.^2.*Z.^3+(X.^2+(9/4).*Y.^2+Z.^2-1).^3;
>> hFigure = figure;
>> sz = get(hFigure, 'Position');
>> set(hFigure, 'Position', [sz(1)-0.15*sz(3) sz(2) 1.3*sz(3) sz(4)]);
>> set(hFigure,'color','w', 'menu','none')
>> hAxes = axes('Parent',hFigure,'NextPlot','add', 'DataAspectRatio',[1 1 1], 'XLim',[30 120],'YLim',[35 65],'ZLim',[30 75]);
>> view([-39 30]);
>> axis off
>> hidden on
>> p = patch(isosurface(F,-0.001));
>> set(p,'FaceColor','w','EdgeColor','none');
>> for iX = [35 38 41 45 48 51 54 57 61 64 67]
plane = reshape(F(:,iX,:),101,101);
cData = contourc(plane,[0 0]);
xData = iX.*ones(1,cData(2,1));
h3=plot3(hAxes,xData,cData(2,2:end),cData(1,2:end),'k');
set(h3,'color','r');
pause(.1), drawnow
end
>> for iY = [41 44 47 51 55 58 61]
plane = reshape(F(iY,:,:),101,101);
cData = contourc(plane,[0 0]);
yData = iY.*ones(1,cData(2,1));
h4=plot3(hAxes,cData(2,2:end),yData,cData(1,2:end),'k');
set(h4,'color','r');
pause(.1), drawnow
end
>> for iZ = [36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 69 71]
plane = F(:,:,iZ);
cData = contourc(plane,[0 0]);
startIndex = 1;
if size(cData,2) > (cData(2,1)+1)
startIndex = cData(2,1)+2;
zData = iZ.*ones(1,cData(2,1));
h0=plot3(hAxes,cData(1,2:(startIndex-1)),cData(2,2:(startIndex-1)),zData,'k');
set(h0,'color','r');
end
zData = iZ.*ones(1,cData(2,startIndex));
h1=plot3(hAxes,cData(1,(startIndex+1):end),cData(2,(startIndex+1):end),zData,'k');
set(h1,'color','r');
pause(.1), drawnow
end
>> pause(.2)
>> text(7,50,70,'I', 'color','r','fontWeight','bold','FontAngle','italic','fontsize',100)
>> pause(.5)
>> text(80,50,43,'YOU','color','r' ,'fontWeight','bold','FontAngle','italic','fontsize',100)
>> pause(.2)
>> line([20 80],[50 50],[52.5 52.5], 'color','k')
>> line([50 50],[20 80],[52.5 52.5], 'color','k')
>> line([50 50],[50 50],[30 80], 'color','k')
>> text(20,50,50,'x')
>> text(48,20,50,'y')
>> text(45,50,80,'z')
>> text(30,60,30,'(x^2+9/4y^2+z^2-1)^3 - x^2z^3-9/80y^2z^3=0', 'fontsize',8)
>> text(35,45,30,'-3<3', 'fontsize',8)
6、
>> 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(-3,3));
>> val=f(x,y,z);
>> [p,v]=isosurface(x,y,z,val,0);
>> patch('faces',p,'vertices',v,'facevertexcdata',jet(size(v,1)),'facecolor','w','edgecolor','flat');
>> view(3);
>> grid on;
>> axis equal;
利用MATLAB制作各种心形相关推荐
- matlab画三维心,matlab动态三维心形(最新整理)
<matlab动态三维心形(最新整理)>由会员分享,可在线阅读,更多相关<matlab动态三维心形(最新整理)(4页珍藏版)>请在人人文库网上搜索. 1.构造体积方程和坐标轴, ...
- 520表白季,教你用matlab画动态心形曲线图,可自动保存GIF格式图片,送给女朋友,她们一定会惊讶,赶紧收藏!!!
昨天发表了一篇用python教你画心形图表白的文章: 想要表白的看这里,教你用python画不同类型的心形图虏获芳心,值得收藏!! 里面详细介绍了各种心形图的画法以及最终的表白神器,值得点赞收藏!! ...
- 用c语言,制作一个心形彩色告白图案(附源码)
今天我们来一个好玩的,用c语言,制作一个心形彩色告白图案. 送给c语言初学者 代码: #include<stdio.h> #include<math.h> #include&l ...
- 利用MATLAB制作基于艾宾浩斯记忆曲线的背单词计划
利用MATLAB制作基于艾宾浩斯记忆曲线的背单词计划 最近感觉自己的英语不够用了,需要背点单词了.打算学期结束后就开始背单词,现在已经入手了<恋练有词>,整本书共30个小部分.听说根据艾宾 ...
- 第四周作业:利用matlab制作图像的二值模板并分别利用模板进行“与模板相与”、“与模板相或”、“与模板异或”操作
文章目录 第四周作业 第一题 第二题 第四周作业 第一题 题目: 利用 MATLAB 编程,打开自己的一张照片,依次完成下列要求: 1) 以照片的自己作为目标,制作二值模板 2) 分别利用模板进行&q ...
- matlab实例——动态心形函数及其涉及的知识点
心形 特别感谢 心形函数1 心形函数2 知识点 figure(...)函数的一些用法 第一种用法最简单 第二种用法 第三种用法 最后一种用法 set函数 num2str(n)解释 ezplot一维绘图 ...
- HTML制作彩带,用彩带制作漂亮心形风铃方法教程
风铃的制作方法很多,各种各样都不同,今天给大家分享一款非常漂亮的心形风铃,不喜欢太多时间,也不复杂,送女孩子们一定很喜欢. 材料:宽1CM左右的彩带一卷.剪刀 制作过程: 1.剪出4条长30CM的彩带 ...
- 如何利用Matlab制作色卡,手把手教你做一张属于自己的色卡,彩铅必备!
色卡是用于色彩选择.比对.沟通,是色彩实现在一定范围内统一标准的工具.很多彩铅刚入门的友友们对于色彩还不是特别熟悉,上色的时候找对应颜色的彩铅就会比较麻烦,做一张色卡可以方便按色号查找画笔颜色,让你快 ...
- 【转载】利用Matlab制作钟表
静态时钟 hObject=figure; set(hObject,'NumberTitle','off'); set(hObject,'MenuBar','none'); set(hObject,'v ...
最新文章
- 谭浩强《C++程序设计》书后习题 第十三章-第十四章
- 最多两次股票交易-Best Time to Buy and Sell Stock III
- 【maven】仓库的优先级顺序
- mysql cmake 参数详解
- 韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源
- pycharm默认注释与快捷键功能
- tomcat清除缓存配置方法
- 加速编程效率,你不知道的IDEA功能设置
- 浙江高院:引导当事人用区块链存取证据,微版权提供一站式知识产权保护服务
- 英特尔的集显和Nvidia的独显切换(切换之后永久有效)
- 微信停止苹果手机服务器,IOS13微信杀后台终极解决办法亲测有效
- python自动玩2048
- 打字游戏之主界面实现
- 部分算法与对应代码整理(R、Python)
- mac改变ipv4地址无法上网
- 【Buzz】离线语音转文字、实时语音识别
- Android历史版本
- javaSE试题(一)
- VL综述:视觉-语言智能:任务、表征学习、大模型
- 新装Win7 x64用Windows Update安装IE9一直失败的解决方法