【飞秋】基于Html5的Canvas实现的Clocks (钟表)

Labview及NI-USRP驱动安装教程 软件下载 安装使用的LabVIEW2018及NI-USRP驱动程序已上传,下载地址: 天翼云盘链接 (访问码:oc33) 百度网盘链接 (提取码:88mi) (注:天翼云盘下载不限速) LabVIEW2018安装步骤 右键软件压缩包选择解压至LabVIEW2018 选中文件,鼠标右击选择以管理员身份打开2018LV-WinChn.exe文件。 点击确定。 点击Unzip解压。 点击确定。 点击下一步。 填写任意信息后,点击下一步。 点击下一步。 点击浏览更改安装路径建议安装到除C盘以 阅读详情

Canvas是Html5中非常重要的Feature 之一,究竟Canvas的未来会怎么样? 各大巨头有着不同的想法,微软的IE9会全面支持Canvas, Safari Chrome FireFox Opera 都已经支持了Canvas, 这些都是对Canvas利好的消息,这说明Canvas 将会在主流的浏览器上得到全面的支持。不过不全是对Canvas利好的消息,Adobe 微软 都有自己成熟的替代技术,Adobe Flash 已经发展了这么多年,拥有广大的用户群,同时Flash的浏览器插件也几乎成为了事实标准,同时Flash 拥有强大的图形处理能力,和良好的IDE开发工具,这都会让人不由的想选择Flash来实现类似的图形效果。微软的SilverLight 不断的更新和发展,这也说明了微软想发展这项技术的决心。乔布斯不让 IPhone 和IPad 支持Flash,但是Google最新的Android 2.2已经支持了Flash,看来这两家巨头在移动设备上的做法不太一样,但是 Apple 和 Google 没有类似的替代技术,看来他们会坚定不移的发展并支持Canvas技术,这两家巨头会带着Canvas走向何处,Canvas会大方异彩被广大的Web开发人员接收并采用,还是黯然的躲在角落里,我想一段时间后,这个答案会满满的浮出水面吧。
经典的Html5 Canvas 例子已经很多,这里的两个Clock 创意并非来自于本文,ColorfulClock 来自于 http://demo.tutorialzine.com/2009/12/colorful-clock-jquery-css/demo.html , CharacterClock 来自于 http://www.j2nete.cn/time/time.html , 非常喜欢这两个Clock创意,这里使用Canvas 来实现了它们,希望各位看官能够喜欢。
实例执行页面: http://www.zhangsichu.com/canvas/canvasclocks.htm ie7 ie8 没有支持Canvas, 请在 Safari Chrome FireFox 或 Opera 下运行此实例页面。
ColorfulClock

 

 

 

ColorfulClock 的核心代码是 ColorfulRing的drawValue 方法,使用Canvas 的 path 创建路径并填充路径。

 

view sourceprint?01 ColorfulRing.prototype.drawValue = function (value) { 

02   

03 var angleStart = 1.5 * Math.PI; 

04 var angleEnd = value / this.threshold * 2 * Math.PI + 1.5 * Math.PI; 

05 var clearSafe = 10; 

06   

07 this.context.save(); 

08 this.context.clearRect(this.positionX - this.radius - clearSafe, this.positionY - this.radius - clearSafe, (this.radius + clearSafe) *2, (this.radius + clearSafe) * 2); 

09 this.context.beginPath(); 

10 this.context.arc(this.positionX, this.positionY, this.radius, angleStart, angleEnd, false); 

11 this.context.lineTo(this.positionX + Math.cos(angleEnd) * this.radiusInner, this.positionY + Math.sin(angleEnd) * this.radiusInner); 

12 this.context.arc(this.positionX, this.positionY, this.radiusInner, angleEnd, angleStart, true); 

13 this.context.lineTo(this.positionX + Math.cos(angleStart) * this.radius, this.positionY + Math.sin(angleStart) * this.radius); 

14 this.context.closePath(); 

15   

16 this.context.strokeStyle = this.borderColor; 

17 this.context.lineWidth = this.borderWidth; 

18 this.context.stroke(); 

19   

20 this.context.fillStyle = this.fillColor; 

21 this.context.fill(); 

22   

23 this.context.fillStyle = this.textColor; 

24 this.context.font = this.textWeight + " " + this.textSize + " " + this.textFamily; 

25 this.context.fillText(value < 10 ? "0" + value : value, this.positionX - parseInt(this.textSize) / 2 - parseInt(this.textSize) / 14, this.positionY + parseInt(this.textSize) / 3 + parseInt(this.textSize) / 14); 

26 this.context.restore(); 

27   

28 this.value = value; 

29 }

 

CharacterClock Canvas 主要使用 fillText来绘制文字,核心的时间显示算法,来自于OwenTime。

 

 

 

两个Canvas Clock在Chrome下分别和DOM实现做了粗略性能比较:

 

关注技术文章飞秋:http://www.freeeim.com/,24小时专业转载。

声音源定位:利用YOLO与麦克风阵列定位声音来源YOLOv5、YOLOv8、YOLOv10 YOLO(You Only Look Once)是一个用于目标检测的深度学习模型。YOLO的最大特点是其通过一次前向传播即可完成多个目标的检测,速度和精度相对其他目标检测算法具有显著优势。YOLO模型的版本不断更新,从YOLOv1到YOLOv10,算法精度和速度都有了显著的提升。声音源定位是利用多个麦克风阵列收集的声音信号,通过算法计算声音源的位置。声音源定位的关键在于准确估计每个麦克风的声音到达时间,从而确定声音源的空间坐标。基于时延估计(TDOA) 阅读详情

相关推荐

Synopsys PCIe IP 实战笔记:手把手教你配置本地数字回环(PIPE/RMMI)

本文详细介绍了Synopsys PCIe IP本地数字回环(PIPE/RMMI)的配置与调试全流程,涵盖硬件连接、寄存器操作及实战技巧。通过数字回环模式,开发者可在无真实对端设备的情况下验证PCIe接口功能,适用于芯片验证和FPGA原型开发。文章还提供了常见问题排查和性能优化建议,助力高效完成协议解析与调试。

weixin_30394669的博客 323

基于Html5的Canvas实现的Clocks (钟表)

Canvas是Html5中非常重要的Feature 之一,究竟Canvas的未来会怎么样? 各大巨头有着不同的想法,微软的IE9会全面支持Canvas, Safari Chrome FireFox Opera 都已经支持了Canvas, 这些都是对Canvas利好的消息,这说明Canvas 将会在主流的浏览器上得到全面的支持。不过不全是对Canvas利好的消息,Adobe 微软 都有自己...

236

Kaggle | 总奖池超200万美金的数学竞赛AIMO2冠军方案

••••结论1:通过结合高质量大规模数据集、工具集成推理和生成式选择方法,可以构建在挑战性数学问题上达到最先进水平的语言模型。本文的方法在 AIMO-2 竞赛中的胜利以及在多个数学基准上的 SOTA 结果验证了这一策略的有效性。结论2:发布 OpenMathReasoning 数据集、OpenMath-Nemotron 模型和代码是社区的宝贵财富。

hxshine的博客 1198

HTML5 History API 详解:前端路由底层原理

pushState改 URL 不刷新popstate接浏览器导航服务端必须兜底 SPA 入口前端路由的本质不是“魔法”,而是:把「URL 字符串」变成「组件渲染函数」的映射表,再让浏览器历史栈和这张表保持同步。

2603_94941239的博客 203

Unity 数字孪生笔记1 工具介绍

前言 工欲善其事必先利其器 流程思考 数字孪生本质上一种基于实际物理数据的可视化方案,通过对接实际数据,在三维界面中展示孪生结果。 那么这个流程就很简单了。 整个流程分为三块:数据来源-》数据分析-》数据展示 输入数据 首先我们需要考虑我们能拿到什么。第一,实际物体的三维数据从哪里来,第二,实际数据怎么获取到。 模型数据 工业上常常会用到CAD模型,CAD模型具有精确、统一的特点,但是CAD不是三角面片,我们不能直接导出到Unity中,而且导入之后有很多不合理的地方,例如面片杂乱、面数过高等问题。针对这个

Thissky的专栏 1万+

Windows批处理脚本实战:用Ping命令打造简易网络监控工具(附完整代码)

本文介绍如何利用Windows批处理脚本和Ping命令,快速构建一个轻量级、自动化的网络监控工具。该方案无需额外安装软件,通过周期性探测目标IP连通性,并将结果(成功、失败及延迟)自动记录到带时间戳的日志文件中,适合中小团队或临时监控需求,实现低成本、高效率的网络状态监控。

5f4d3s2a1q的博客 496

HTML5 表单新特性:验证、输入类型、自动填充,告别大量 JS

让 HTML 描述“这是什么数据”,让浏览器做“该怎么校验、怎么输入、怎么填充”,让 JS 只处理真正复杂的业务逻辑。更轻、更稳、更可访问、移动端更舒服的表单。

2609_95039045的博客 212

告别‘火龙’:实测BES2800/RK2108等主流芯片,聊聊AI眼镜的功耗与散热‘内卷’实战

本文深入探讨了AI智能眼镜在功耗与散热方面的挑战,重点分析了恒玄BES2800和瑞芯微RK2108等主控芯片的能效表现。通过实测数据和优化策略,揭示了在6nm工艺、异构计算和系统级散热方案下的实战经验,为AI眼镜的功耗管理提供了实用解决方案。

weixin_30839881的博客 950

HTML5 地理定位 Geolocation:获取用户位置的坑与合规方案

拿得到(HTTPS + 授权)用得稳(超时/降级/精度判断)守得住(最小必要 + 可删除)页面加载别自动要位置按钮触发 + 先说人话拒绝不纠缠,给手动。

2609_95039210的博客 195

22、光无线通信调制技术详解

本文详细介绍了光无线通信中的多种调制技术,包括开关键控(OOK)、脉冲位置调制(PPM)、数字脉冲间隔调制(DPIM)、副载波强度调制(SCM)、相移键控(PSK)、正交幅度调制(QAM)以及多载波调制(MCM)如OFDM和MSIM。文章分析了各类调制技术在带宽需求、功率效率、传输容量、传输速率和PAPR等方面的性能差异,并通过Matlab仿真展示了其在AWGN信道下的误码率表现。同时,对比了不同技术的适用场景,提出了调制选择流程,并结合室内光通信与自由空间光通信的应用案例,展望了未来调制技术向高频谱效率、

net55的博客 116

【100%通过率】2023华为od机试C卷【围棋的气】Python 实现

围棋棋盘由纵横各19条线垂直相交组成,棋盘上一共19 x 19 = 361 个交点,对奔双方一方执白棋,一方执黑棋,落子时只能将棋子置于交点上。 “气”是围棋中很重要的一个概念,某个棋子有几口气,是指其上下左右方向四个相邻的交叉点中,有几个交叉点没有棋子,由此可知:

MISAYAONE的博客 1859

HTML5 Web Audio API:在网页里做音频可视化

播放音频谁都会:一个<audio>标签就够了。但如果你想让页面“看见声音”——频谱跳动、波形起伏、低音一震整个圆环发光,那就必须上。它的核心思路不是“播放”,而是把音频当成一条音频源 → 处理节点 → AnalyserNode 取数据 → Canvas 画出来 → 扬声器出声本文从原理到代码,把音频可视化完整跑通。

2603_94941287的博客 207

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

HTML5 Web Workers:把耗时计算丢到后台,防止页面卡死

方式拷贝内存速度适用场景结构化克隆✅ 深拷贝双倍慢小数据、复杂对象❌ 零拷贝不增加极快大 ArrayBuffer、大文件把耗时计算从主线程剥离,让 UI 永远流畅。不共享内存​ → 没有锁、没有竞态条件消息传递​ → 简单、可预测、易调试隔离环境​ → 安全、稳定配合做零拷贝大数据传输,配合IndexedDB做离线存储,配合做网络代理——HTML5 的这套多线程方案,已经足够支撑大多数高性能 Web 应用。别再让主线程扛所有活了。该丢后台的,就丢后台。

2609_95039210的博客 162

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

HTML5 中的微数据、RDFa:让搜索引擎读懂你的网页内容

星级评分价格 / 库存发布时间面包屑活动日期文章作者头像,HTML5 原生、直观但耦合布局,更标准、更强大、更啰嗦JSON-LD:脱离 DOM,现代首选三者都靠schema.org 词汇表表达语义目标不是“排名”,是让爬虫/AI明确知道:这段字不是文本,是“实体 + 属性”写页面时多问一句:“如果去掉 CSS,机器还知道这是什么吗?

2603_94941239的博客 92

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

怎么给网站做暗色模式?Safari 27.3 自适应与自建全流程

40% 的用户、10% 的支持率,这个缺口要么浏览器替你填(Safari 的路线),要么你自己填(一个下午就能上手的 light-dark() 路线)。两条路都通向同一个结论:2026 年再上线一个只有亮色的网站,已经说不过去了。事实与数据出自 WebKit 官方博客「Introducing Adaptive Dark Mode」,CSS 特性细节可查 MDN 文档的 color-scheme 与 light-dark() 条目。版权声明:本文为博主原创文章,转载请注明出处。

weixin_41407416的博客 179

Chrome 扩展安全攻防实录:从攻击面到防御实践

回顾攻防要点,给出后续学习方向,如官方安全文档、扩展审计工具与真实漏洞案例。

trwghwe的博客 281

Chrome 内存泄漏诊断指南:从现象到根因的完整排查路径

汇总排查流程要点,给出日常开发中预防内存泄漏的实践建议与检查清单。

FJ39SfgYS的博客 140

Chrome 2026隐私安全防护全攻略:浏览器数据防泄露实战进阶指南

2026年Chrome已完成隐私安全体系全面重构,反追踪、沙箱隔离、数据加密能力迎来重大升级。本文详解第三方Cookie拦截、指纹防护、权限精细化管控与恶意站点拦截方案,帮你彻底杜绝浏览数据泄露风险,实现全场景安全上网。

Frag0ut的博客 320

Chrome扩展开发入门:从零打造实用浏览器插件

想给Chrome加自定义功能却不知道从哪下手?本文从扩展基础架构、核心API使用、权限配置到打包发布,一步步带你从零写出第一个可用的浏览器插件,轻松实现网页增强、效率提升等自定义需求。

MyBili的博客 327
上一篇: 【飞秋】基于Html5的Canvas实现的Clocks (钟表)
下一篇: 【飞秋】手机游戏发展趋势分析和预测
普通网友
博客等级 码龄22年 1万+粉丝 3156原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值