前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >既然一“墩”难求,那咱就用MATLAB画个冰墩墩

既然一“墩”难求,那咱就用MATLAB画个冰墩墩

作者头像
巴山学长
发布2022-03-29 21:24:58
1K0
发布2022-03-29 21:24:58
举报
文章被收录于专栏:巴山学长巴山学长

前几天有伙伴在公众号后台发送“冰墩墩”,想必这些伙伴期待着咱公众号也能出一个有关冰墩墩的文章,今天她来了!!!

在绘制之前,特意在网上搜索了一番,python和matlab绘制冰墩墩的源代码都有,画出效果也是可圈可点。归纳网上的python与matlab绘制冰墩墩规则,基本上就是用椭圆、圆以及桃心拼装出一个“冰墩墩”。这种方式看似简单,但实际操作起来并不容易,我也不想去照搬照抄别人的东西,因此决定另辟蹊径,直接“画”出冰墩墩。既然是画,就离不开神仙工具Photoshop,并以百度百科词条中冰墩墩实物图作为蓝本进行描摹。

(来源:百度百科冰墩墩)

通过PS描摹得到冰墩墩的轮廓线,然后通过matlab编程提取轮廓线坐标,有了坐标就可以完美动态展示任何一个想要绘制的部分,还能实现图形的矢量化操作。不知道如何用matlab提取轮廓线坐标伙伴,可以参看matlab爱好者公众号之前推送的文章(matlab任意图形轮廓坐标提取【含源代码】)。

整个绘制过程,主要涉及到plot和patch两个matlab绘图函数,整个冰墩墩被划分成60个小部分,包括所有冰墩墩部位、北京2022年冬奥会会徽、奥运会会徽以及各个文字,全部实现了坐标化。在细节表现上自认为比目前搜到的所有matlab及python绘制的都更加完美,下图是matlab爱好者版冰墩墩,大家可以自行比对。

当然,也制作了一个动态绘制冰墩墩的视频,让伙伴体验一下用matlab绘制冰墩墩的乐趣:

视频时长:1分27秒

背景音乐来源:bilibili.com/video/BV1Aq4y187z5

http://mpvideo.qpic.cn/0bc364acqaaatqaelwikwbrfb56dfd3qakaa.f10002.mp4?dis_k=e972cbc9848e93c48490aca9e55a1d23&dis_t=1648560206&vid=wxv_2269257192652537865&format_id=10002&support_redirect=0&mmversion=false

部分代码展示

代码语言:javascript
复制
clc;clear;close all;
% 自定义figure属性
figure('Position',[518 51 1003 971],'Name','冰墩墩 (Bing DwenDwen) —— matlab爱好者','NumberTitle','off','Color','w','Menubar','none');

% 自定义坐标轴位置
axes('Position',[0.01 0.01 0.99 0.99]);
axis equal;
% 设置坐标轴范围
xlim([0 6500]);
ylim([0 6500]);
% 设置Y轴方向
set(gca,'YDir','reverse');

axis off;

hold on;  

%% 绘制相关参数设置
spd       = 6;     % 控制绘制速度

lineWidm  = 1.5;   % 普通线粗
lineWidf  = 4.5;   % 脸线线粗
lineWidl  = 0.7;   % 会标线粗

malpha    = 0.90;  % 设置普通透明度
dongAlpha = 0.98;  % 设置冬的透明度

load('bdd.mat');
len = length(bdd);

由于网上已有现成绘制冰墩墩的相关代码,而本文分享的也没有什么技术含量,就不给大家分享源代码了,伙伴们可以自行使用PS去自定义心目中的冰墩墩。雪容融正在来的路上,敬请期待.......

参考资料:

[1] baike.baidu.com/item/冰墩墩/23759017

[2] baike.baidu.com/item/奥运会会徽/930856

[3] baike.baidu.com/item/北京2022年冬奥会会徽/59199395

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-02-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 巴山学长 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档