转眼中秋节就要到了!!

用MATLAB给大家画个月饼:

同时,在这里

提前祝大家中秋快乐!!!

程序其实非常简单哈,只是用一系列plot和fill绘制线条和各种不规则形状拼接起来就好,说是2.5D,只是依靠降低y轴坐标数值重新绘图模拟阴影效果,显得比平面月饼更有立体感了而已。

程序效果:

完整代码:

function moonCake
% @author:slandarer
ax=gca;
hold(ax,'on');
axis equal
ax.XLim=[-15,15];
ax.YLim=[-15,15];
CSet=[0.92 0.51 0.11;1 0.7 0.09;0.87 0.41 0.05];for i=[1:7,9,8]if i==1tt=linspace(0,-pi/16,100);elseif i==9tt=linspace(-pi+pi/16,-pi,100);elsett=linspace(-pi/16-(i-2)*pi/8,-pi/16-(i-1)*pi/8,100);endxSet=cos(tt).*(10+abs(cos(tt.*8)));xMin=find(xSet==min(xSet));tt(xMin)xMax=find(xSet==max(xSet));t1=min([xMin(1),xMax(1)]);t2=max([xMin(1),xMax(1)]);xSet=cos(tt(t1:t2)).*(10+abs(cos(tt(t1:t2).*8)));ySet=sin(tt(t1:t2)).*(10+abs(cos(tt(t1:t2).*8)))-3;fill([xSet(1),xSet,xSet(end)],[ySet(1)+3,ySet,ySet(end)+3],CSet(mod(i,2)+1,:),'EdgeColor','none')end
t=linspace(0,2*pi,640);
fill(cos(t).*(10+abs(cos(t.*8))),sin(t).*(10+abs(cos(t.*8))),CSet(1,:),'EdgeColor','none')
plot(cos(t).*(9+abs(cos(t.*8))),sin(t).*(9+abs(cos(t.*8)))-0.3,'Color',CSet(3,:),'LineWidth',6)
plot(cos(t).*8.7,sin(t).*8.7-0.3,'Color',CSet(3,:),'LineWidth',4)
plot(cos(t).*(9+abs(cos(t.*8))),sin(t).*(9+abs(cos(t.*8))),'Color',CSet(2,:),'LineWidth',6)
plot(cos(t).*8.7,sin(t).*8.7,'Color',CSet(2,:),'LineWidth',4)plot([0 0],[-7 7]-0.3,'Color',CSet(3,:),'LineWidth',4)
plot([-7 7],[0 0]-0.3,'Color',CSet(3,:),'LineWidth',4)
plot([0 0],[-7 7],'Color',CSet(2,:),'LineWidth',4)
plot([-7 7],[0 0],'Color',CSet(2,:),'LineWidth',4)t4=linspace(0,pi/2,100);
xSet4=[cos(t4).*6+1,1,6,cos(t4(1:end-12)).*5+1,2,4.8,cos(t4(17:end-40)).*3.9+1];
ySet4=[sin(t4).*6+1,1,1,sin(t4(1:end-12)).*5+1,2,2,sin(t4(17:end-40)).*3.9+1];plot(xSet4,ySet4-0.3,'Color',CSet(3,:),'LineWidth',4)
plot(-xSet4,ySet4-0.3,'Color',CSet(3,:),'LineWidth',4)
plot(xSet4,-ySet4-0.3,'Color',CSet(3,:),'LineWidth',4)
plot(-xSet4,-ySet4-0.3,'Color',CSet(3,:),'LineWidth',4)
plot(xSet4,ySet4,'Color',CSet(2,:),'LineWidth',4)
plot(-xSet4,ySet4,'Color',CSet(2,:),'LineWidth',4)
plot(xSet4,-ySet4,'Color',CSet(2,:),'LineWidth',4)
plot(-xSet4,-ySet4,'Color',CSet(2,:),'LineWidth',4)
end

当然,大家也可以尝试其它颜色:

颜色列表如下:

CSet1=[0.92 0.51 0.11;1 0.7 0.09;0.87 0.41 0.05];
CSet2=[0.43 0.68 0.44;0.62 0.8 0.44;0.28 0.47 0.28];
CSet3=[0.44 0.25 0.38;0.54 0.37 0.51;0.23 0.16 0.21];
CSet4=[0.94 0.83 0.55;0.98 0.89 0.68;0.83 0.67 0.4];
CSet5=[0.79 0.46 0.44;0.9 0.61 0.58;0.73 0.38 0.38];
CSet6=[0.89 0.7 0.23;0.97 0.85 0.37;0.91 0.68 0.2];
CSet7=[0.54 0.38 0.27;0.64 0.42 0.27;0.25 0.1 0.03];
CSet8=[ 0.62 0.53 0.6;0.7 0.7 0.81;0.44 0.39 0.45];
CSet9=[0.73 0.78 0.65;0.75 0.84 0.77;0.59 0.58 0.48];

再次祝愿大家中秋快乐

阖家团圆幸福!

中秋节快到了,一起用MATLAB绘制一款2.5D月饼叭相关推荐

  1. 万圣节快到了,一起用MATLAB绘制一个可爱的南瓜灯叭

    效果及原理 效果如下: 调一下数据还能改成三角眼: 原理 南瓜主体函数从知友 [九章算法] 的一张图而来,大体是瓜身瓜柄分段函数,然后绕着z轴旋转一周得到曲面,我对数值做了微调,原图及原始数据: 这里 ...

  2. 母亲节快到了,用python绘制一株简单好看的康乃馨叭

    绘制效果: 此代码源自: https://my.numworks.com/python/apocaliips/carnation 网站 apocaliips 的代码 其代码旨在宣传 kandinsky ...

  3. MATLAB绘制主函数动态图,matlab绘制动态图

    mathematica绘制动态图,"绘图之王"争霸赛--Excel才是绘图王道,matlab绘制动态图,动态三维图绘制 matlab动态图画法_数学_自然科学_专业资料.Matla ...

  4. MATLAB绘制WRF模拟区域和局部的放大

    MATLAB绘制WRF模拟区域和局部的放大 clc;clear;close all filename = 'ETOPO2v2g_f4.nc'; ncdisp(filename);% lon=doubl ...

  5. nyquist图怎么画matlab,用MATLAB绘制Nyquist图

    <用MATLAB绘制Nyquist图>由会员分享,可在线阅读,更多相关<用MATLAB绘制Nyquist图(9页珍藏版)>请在人人文库网上搜索. 1.用MATLAB绘制Nyqu ...

  6. matlab绘制圆,且求解两个圆的交点坐标

    前言 这里简单记录下对于matlab绘制圆,以及求解两圆交点的坐标的实现(包括C++). 一 绘制圆 circle.m文件: function [] = circle(x, y, r, color) ...

  7. matlab系统的根轨迹,实验五 利用MATLAB绘制系统根轨迹

    <实验五 利用MATLAB绘制系统根轨迹>由会员分享,可在线阅读,更多相关<实验五 利用MATLAB绘制系统根轨迹(6页珍藏版)>请在人人文库网上搜索. 1.实验五 利用MAT ...

  8. Matlab 绘制三维立体图(以地质异常体为例)

    Matlab 绘制三维立体图(以地质异常体为例) 参考文章: (1)Matlab 绘制三维立体图(以地质异常体为例) (2)https://www.cnblogs.com/yangwenbo214/p ...

  9. matlab绘制频散曲线,Matlab绘制频散曲线程序代码.docx

    Matlab绘制频散曲线程序代码.docx 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. ...

最新文章

  1. DeeplyTough | 学习蛋白质结合位点的结构比较
  2. 神策 2019 数据驱动大会「 PPT 下载」,零距离感受大会精华
  3. Android设计模式之——解释器模式
  4. obs噪音抑制调多少合适_TVS瞬态抑制二极管的特性及应用
  5. 解决在Windows10没有修改hosts文件权限
  6. 百行代码制作自己的夸夸语料库,打造聊天机器人
  7. ROM制作,专属个性的亮光点
  8. 《2017微信春节数据报告》出炉 初一到初五微信红包收发总量达到460亿个
  9. 小米路由器梅林_小米路由器刷Merlin
  10. phpAdmin中id字段如何设置自增
  11. 地图学的基础知识_天文坐标系_大地坐标系_地心坐标系及其相关概念
  12. 网站PC端与wap端适配
  13. windows下qt android开发
  14. springboot基于微信小程序的宿舍管理系统
  15. 将SQL server2019数据库部署在虚拟机上
  16. 复杂美入选2022中国产业区块链企业100强
  17. 算法交易的成长与未来
  18. JAVA基础6.59——抽象类(2)
  19. Java Springboot之数据库监控与预警
  20. Matlab仿真,数字基带传输系统的设计实验报告

热门文章

  1. 引用 和指针 ,简单, 一怔见血
  2. 学习笔记(01):C++编程FFMpeg(QT5+OpenCV)实战--实时美颜直播推流-直播服务器介绍crtmpserver编译运行(ubuntu)...
  3. 鼠标经过文字显示隐藏图片css样式
  4. 如何读取csv文件并将其转化为tsv文件
  5. ipad使用计算机的图片大全,三种方式备份 iPad 照片
  6. 粒子群算法组卷_概率表示的二进制粒子群算法在组卷中的应用
  7. CASS11.0亮点介绍(超越自我,再续辉煌),AutoCAD2020平台界面更加高雅了,或许您应该来体验一下新平台的高雅黑
  8. 自定义UpsertStreamTableSink
  9. python-字符串格式化(万古枯)
  10. 微信小程序-枯木学习笔记5-我的信息