绘制基本测试函数图像以及摸鱼听歌

  • 一、绘制基本测试函数图像
    • 1、函数的定义与调用
    • 2、保存图片到指定路径
    • 3、图像回调
  • 二、复现网易云音乐播放器
    • 1、web网络请求API
    • 2、try catch end 的使用
    • 3、计时器的使用
    • 4、时间转换函数
    • 4、调节音量大小
  • 总结

  写在前面,本篇博客主要参考博主slandarer MATLAB App Designer入门实战(一)绘制基本测试函数图像,以及复现博主唤醒手腕 Matlab中有关于web网络请求API的相关应用(更新中)

注:仅记录学习,如有侵权,联系删除。

一、绘制基本测试函数图像

  效果图

1、函数的定义与调用

  不同的函数,有不同的取值范围,也有不同的计算公式,但同时也使用一些相同的变量名,所以涉及很多函数之间的相互调用以及属性的设置。
  举一个简单的例子,大家意会一下。

  接下来看一下基本测试函数的关键函数设置

  接下来看一下回调函数

  startupFcn

2、保存图片到指定路径

  在app中保存图片的方法

3、图像回调

二、复现网易云音乐播放器

  效果图,摸人鱼日历这个不太稳定。可以换一个自己喜欢的图
  在一起,鸡毛蒜皮也是故事

  选这个图,绝对不是因为这个女孩子好看(随机获取歌曲的,不管你信不信,我是信了。)


1、web网络请求API

  例子,详细介绍请参考博主唤醒手腕的博客。

%% 每日情话api接口
clc
clear
data = webread("https://api.vvhan.com/api/love?type=json");
disp(data.ishan)
%% 天气情况
Local_weather = webread("https://api.vvhan.com/api/weather");
Destination_weather = webread("https://api.vvhan.com/api/weather?city=运城");
%% 音乐播放器
data = webread("https://api.vvhan.com/api/rand.music?type=json&sort=热歌榜");
music_infor = data.info;
% 获取音频的数字信号y,和采样频率Fs
[y,Fs] = audioread(music_infor.mp3url);
% 使用采样率 Fs 为信号 Y 创建 audioplayer 对象。该函数返回音频播放器对象 player。
player = audioplayer(y,Fs);
play(player)  % 开始播放 音频播放器对象 player
% pause(player) % 暂停播放
% resume(player)% 继续播放
%% 随机一句一言
A_word = webread("https://api.vvhan.com/api/ian?type=json");
disp(A_word.data.vhan)%% 摸人鱼日历
image_address=webread("https://api.vvhan.com/api/moyu?type=json");
image=webread(image_address.url);
newIcon=javax.swing.ImageIcon('icon.png');
h=figure('ToolBar','none',...'MenuBar','none',...'Name','摸人鱼日历',...'NumberTitle','off');
warning off
figFrame = get(h,'JavaFrame'); % 今后没这个函数了,但是现在我也没办法处理
figFrame.setFigureIcon(newIcon);
imshow(image)%% 随机LOL超清人物壁纸
LOLimage_address=webread("https://api.vvhan.com/api/lolskin");
imshow(LOLimage_address)%% 每日一句励志英语
joke=webread("https://api.vvhan.com/api/en?type=sj");
disp(joke.data.en)
imshow(webread(joke.data.pic))
hold on
text(4,4,joke.data.en,'FontSize',14,'FontWeight','bold')

2、try catch end 的使用

  当你使用web的时候,有时候资源就不存在了,即使你能读到,但是原网站的资料没了
所以当你读不到的时候,弹出一个对话框,对话框的消息自己设置,看是哪个资源找不见了。
matlab中的模态对话框都可以这么用,我这里只是用了一个消息提示盒子,记录下他的句柄,等两秒以后自动删除。matlab命令行输入lookfor dlg 可以查到matlab所有的模态对话框,用法大同小异。

3、计时器的使用

  定时器的使用参考这篇博客 老子姓李!

4、时间转换函数

  在音乐播放器中,有一些时间显示,用到了append函数,设置时间的时候查的是player的CurrentSample和TotalSamples这两个属性。再参考唤醒手腕的博客,这部分功能也就实现了。
此代码来源于24岁的学习随笔

            hour = floor(num/3600);              % floor: 向下取整minute = floor(mod(num,3600)/60);    % mod: 求余数second = num - 3600*hour - 60*minute;if hour < 10hour = ['0',mat2str(hour)];      % mat2str:将double转化为字符串elsehour = mat2str(hour);endif minute < 10minute = ['0',mat2str(minute)];elseminute = mat2str(minute);endif second < 10second = ['0',mat2str(second)];elsesecond = mat2str(second);end%     Output = [hour,':',minute,':',second];Output =[minute,':',second];end

4、调节音量大小

  在音乐播放器中,主要涉及调节音量大小的问题。用一个滑块来调节音量大小。

   1. matlab无法直接控制电脑的声音大小
   2. 当你把声音信号变成很大的时候,会有很多噪声。我试了一下,扩大两倍的时候,还能接受,再多的话噪声太明显了。但是在原来的基础上缩小的时候,音质是没任何变换的。
   3. 所以有两种办法,第一就是你放大的倍数在0-2倍,第二个就是你初始播放的时候是在0.5播放的,你也最多扩大两倍,音质听着跟原来一样。
   4. 可能matlab能直接调整电脑声音,但是我没找见怎么设置。

总结

  看到这句话,应该可以实现所有的功能,在这基础上还可以继续改进。丰富更多的测试函数,然后把智能算法也加进去。其次就是改进这个音乐播放器,我只是简单实现了一下,并没有增加更多的功能,就是多用了一两个API,其余的没什么了。

Matlab App Designer 【03】绘制基本测试函数图像以及摸鱼听歌相关推荐

  1. 《MATLAB App Designer从入门到实践》随书源代码

    GUIDE已经被MATLAB抛弃了,你还不知道吗?App Designer才是发展的方向 目前市面上MATLAB GUI编程的书籍琳琅满目,但大多数是基于GUIDE开发的,MATLAB从2016年开始 ...

  2. MATLAB App Designer入门实战(一)

    最近也是在研究MATLAB App Designer,开这样的一个系列主要是为了记录我在研究App Designer时遇到的一部分问题的解决,和一部分有趣的想法,每一篇文章会展示如何将一个项目mlap ...

  3. 汽车各档爬坡度曲线matlab,基于MATLAB App Designer的汽车爬坡能力建模与仿真

    1. 引言 汽车常常需要在不同区域的不同道路上行驶,尤其在山区道路上,坡陡路窄,汽车必须具有一定的爬坡能力,爬坡能力通常由最大爬坡度来衡量,最大爬坡度是汽车动力性能的重要指标之一.为此开展了基于MAT ...

  4. Matlab App Designer 学习笔记

    提示:本文的学习视频来自B站小刘老师的教程 链接:https://www.bilibili.com/video/BV16f4y147x9?from=search&seid=2070258926 ...

  5. MATLAB App Designer入门实战(三)

    这期文章中的问题虽然比较少,但是综合性较强. 系列文章目录: MATLAB 手把手带你制作第一个APP designer程序(电子词典) MATLAB App Designer入门实战(一) MATL ...

  6. matlab app designer使用心得

    matlab app designer使用心得 最近导师让我在simulink仿真的基础上整一个仿真软件,然后就发现现在matlab已经把之前的GUIDE升级成了app designer,一番摸索踩坑 ...

  7. MATLAB App Designer入门实战(二)

    为了方便汇总,这里的目录是接着第一篇来的. 系列文章目录: MATLAB 手把手带你制作第一个APP designer程序(电子词典) MATLAB App Designer入门实战(一) MATLA ...

  8. 用MATLAB app designer设计人机交互界面——二阶线性动态电路可视化分析的研究

    用MATLAB app designer设计人机交互界面--二阶线性动态电路可视化分析的研究 这是我第一次尝试写博客,我试着给出电路课上要求的电路实验编程.但是电路的类型有点儿多,所以我只以二阶动态电 ...

  9. MATLAB App Designer GUI开发从0到1(二)

    文章目录 前言 一.开关以及旋钮 1. 左上角:旋钮 2.右上角:90度仪表 3.左下角:分档开关 4.右下角:开关 5.对旋钮微调 二.画图 1. 普通画图 2.添加小组件 三.回调函数 简单的回调 ...

最新文章

  1. 300秒搞定第一超算1万年的计算量,量子霸权时代已来?
  2. 从零到熟练编写LaTex数学公式,这两篇就够了
  3. 基于词典的正向最大匹配中文分词算法,能实现中英文数字混合分词
  4. 乐山市2021年高考成绩查询,四川乐山2021年普通高考报名人数 实际高考参考人数...
  5. 浅谈Nginx服务器的内部核心架构设计
  6. 使用Httpclient来替代客户端的jsonp跨域解决方案
  7. php.c drcom,校园网绕过Drcom安装自动登录程序到路由器
  8. linux vector 头文件,LINUX 之Vector用法
  9. js获取cookie获取不到问题 vue获取cookie以及获取不到问题
  10. Java迭代器修改链表_Java恼人的迭代器不会返回链表中的元素
  11. STM32F7xx —— QSPI
  12. 绘图python_Python绘图
  13. [原创]从程序员角度分析安徽电信HTTP劫持的无耻行径 - 草根的暂时胜利
  14. js 点击闭包_【JS进阶】Javascript 闭包与Promise的碰撞
  15. linux java api_Java常用API、Math类介绍
  16. PAT 乙级 1017. A除以B (20) Java版
  17. Android USB audio on Android platform
  18. 【elasticsearch】安装合集
  19. Hibernate 学习的书-夏昕(1)
  20. mapabc高德地图区域收缩事件监听

热门文章

  1. Docker系列 头脑风暴专用手绘图应用excalidraw
  2. 用java实现的资源管理器
  3. 阅读书源最新2020在线导入_推荐3款无广告、速度快、可换源的小说利器,5星使用阅读体验...
  4. Parameter Sharing Exploration and Hetero-center Triplet Loss
  5. nvme固态硬盘开机慢_装上固态SSD的电脑几个月后就卡慢?是因为你忽略了这一个细节...
  6. 【软件测试】我们测试人搭上元宇宙的列车,测试一直在进军......
  7. SAP 教程之 SAP 中的 IDOC
  8. 暗影精灵8安装ubuntu18.04双系统后wifi适配器(没有wifi图标)缺少
  9. 爬虫获取天气预报并可视化
  10. 点击文字或者按钮在本页面中弹出悬浮小窗口