2019年
11月29日
9.2分钟

可视化想法出现频率

频率可视化airglass.jsAirglass最佳实践

我的博客主页有个可视化组件,它能动态呈现每月想法发布频率,灵感来自GitHub上代码提交频率图,不同的是,我的基本单位是月,GitHub的基本单位是天。一天提交许多次代码很常见,一天写很多篇文章很困难。

2019年
10月30日
5.3分钟

Canvas实现标注多边形与图像切割

标注多边形canvas图像切割

我又重新实现了一版依赖Airglass.js库的基于Canvas技术的功能包括多边形区域标注以及图像切割的实验项目,这篇想法记录开发过程。

2019年
10月25日
11.1分钟

生命游戏开发记录

生命游戏元胞自动机airglass.js最佳实践

完善Airglass.js的继承机制,增加了extend方法,优化了Renderable和Effect两个基础可渲染类。采用常见规则借助Airglass.js实现出了生命游戏,与网络上其他版本不同的是,我使用了彩色格子。进一步加深了我对面向对象编程思维的理解与应用熟练度。

2019年
10月17日
4.0分钟

Airglass.js现已支持关键帧动画

关键帧动画Airglass.js开发笔记

Airglass.js最近的更新中支持了关键帧动画,这依赖于canvas离屏渲染技术。开发者可以从序列图创建关键帧,也可以拷贝其他可渲染组件的关键帧,这适用于希望呈现相同效果的组件,以节省不必要的内存开销。我还在探索关键帧渲染与直接渲染之间的平衡点。

2019年
10月4日
4.2分钟

定制地图与雷达波动效

airglass.js最佳实践

地图是FUI界面中常出现的组件之一。我希望Airglass.js能处理好地图渲染,以及地图中丰富多样的动效,所以尝试用Airglass.js完成一个关于地图的最佳实践。在探索的中后期,我将Three.js纳入解决方案与Airglass.js来一次混搭。

2019年
9月23日
9.4分钟

节点关系可视化

airglass.jsnodelinkairglass最佳实践

经过了一周断断续续的探索,Airglass.js的第二个组件NodeLink终于大功告成。这期间我从Dribbble和Behance等设计网站借鉴了不少创意灵感,以及Blender操作界面给我的启发。在开始下一个组件的开发之前,我想通过这篇想法简单谈谈NodeLink组件。

2019年
9月12日
6.9分钟

标注多边形区域工具

airglass.js多边形标注颜色canvas编辑多边形区域airglass开发笔记

我用airglass.js初步完成了第一个最佳实践:创建和编辑多边形标注区域。做Demo的同时完善Airglass.js。我给渲染器类新增了击中检测实例方法,还增加了链式调用提升开发效率。同时新增多边形Polygon类,它是继矩形圆形后Airglass.js出现的第3个基本形状。接下来是对Demo无止境优化的漫漫长路。

2019年
9月10日
3.8分钟

Airglass.js开发笔记:最佳实践前奏

airglass.js最佳实践Airglass开发笔记

我把Glass的集合称作舞台。理论上每一个舞台中Glass的数量是无上限的。我并不推荐一个舞台上有超过3个Glass。最理想的情况是,顶层Glass用来捕获外部事件与放置可交互元素,下层Glass用来放置数据驱动型的元素。

2019年
9月9日
2.3分钟

Airglass.js开发笔记:订阅

订阅canvas合成事件airglass的故事

Airglass有层叠玻璃的概念,为此我创建了Glass类,并让Renderer类继承Renderer。Glass类实现了处理原生与非原生的合成事件的订阅与退订功能。每一层渲染器都可以订阅其他任何渲染器发生的事件。最顶层的渲染器用来捕获和发布外部原生事件,就像最上层玻璃能感知光线穿过,层层传递给下层玻璃。

2019年
9月8日
3.9分钟

Airglass.js开发笔记:监听

canvas虚拟事件委托JS类的继承airglass的故事

Airglass要做的是FUI/HUD风格UI组件库。用户界面自然少不了对界面交互的支持。利用事件委托的方式,canvas将监听到的鼠标和触摸事件派发给canvas中绘制的虚拟元素。我甚至让开发者能够订阅虚拟元素触发的各种定制化事件。从而实现用户操作canvas画布上虚拟UI的可能。

2019年
9月6日
2.0分钟

Airglass.js开发笔记:起步

typescript构建类库设计继承类webpack构建类库airglass.js开发笔记

Airglass是我在2017年的夏天想要启动的独立项目——基于Canvas技术开发一款支撑FUI/HUD视觉风格用户界面的基于面向对象思想与方便扩展组件的基础组件库。从本篇开始我会一边开发Airglass.js一边详解开发过程。

回到主页 » 全部想法
陈帅华的微信二维码