Skip to content

FlowLine 流光线条 ​

常用于可视化大屏添加流光线条,增添动态效果

提示

精灵图推荐使用TexturePacker进行制作,不过它是要收费的
如果你想使用免费的工具制作精灵图,有大佬制作了工具Flint,选择图集打包,图集格式采用PixiJS进行制作
另外需要注意:无论是TexturePacker还是Flint,都不要采用旋转,目前暂时不支持旋转属性;同时精灵图名称使用0、1、2、3...进行命名

安装 ​

sh
npm install @poggi/flowline
pnpm add @poggi/flowline
yarn add @poggi/flowline

基础用法 ​

设定路径即可按照路径绘制流光线条

loading

多线条 ​

可以同时绘制多条流光

loading

贝塞尔曲线 ​

流光也支持贝塞尔曲线

二次贝塞尔曲线 ​

loading

三次贝塞尔曲线 ​

loading

案例 ​

loading
loading

​

API ​

FlowLineRender 类 ​

Methods ​

resize(width?: number, height?: number)

画布尺寸变化时同步

render

执行渲染

setSource(option: IKeyframesSource)

设置资源

destroy

销毁

Interfaces ​

IFlowLineRenderConstructorOptions

属性名说明类型是否必选默认值
container容器HTMLCanvasElement是-
lines流光参数IFlowLineConstructorOptions[]是-
dpr设备像素比number否devicePixelRatio
useWorker是否使用workerboolean否true

IFlowLineConstructorOptions

属性名说明类型是否必选默认值
path路径IPathNode[]是-
sampleInterval采样精细度,越小越平滑number否2
color流光颜色string否#00f3ff
lineWidth流光线条宽度number否1
headFade流光线条本身的头部渐变长度number否20
tailFade流光线条本身的尾部渐变长度number否20
pathStartFade路径起点的渐变淡入长度number否50
pathEndFade路径终点的渐变淡出长度number否50
speed移动速度(每帧移动的索引数)number否2
delay初始延迟播放的时间(毫秒 ms)number否0
interval每次循环播放完毕后的等待间隔时间(毫秒 ms)number否0
showTrack是否显示路径底色轨道线boolean否false
trackWidth底色轨道线宽度number否1
trackColor底色轨道线颜色number否rgba(255, 255, 255, 0.1)
isClosed是否闭环,即首尾相连boolean否false

IPathNode extends IKeyframesSource

属性名说明类型是否必选默认值
type流光类型'line' | 'curve'是-
controlPoints贝塞尔曲线控制点,当type为'curve'时生效IPoint[]否-

IPoint

属性名说明类型是否必选默认值
x水平坐标(像素点)number是-
y垂直坐标(像素点)number[]是-