如何在无很高CPU使用率的情况下为SVG路径上的无限标记运动设置动画?

好能源

我希望在我的D3图的链接上实现流量指示器,如本块所示

该块使用stroke-dashoffset关键帧CSS动画来实现流程,虽然看起来不错,但CPU使用率几乎为100。

我读到您可以通过包含某些CSS属性来欺骗某些浏览器来触发GPU加速,但是其他消息来源指出这不再起作用,并且当然,尝试添加时,我当然看不到任何好处transform: translateZ(0);

我一直在研究其他选项,并尝试以这种样式沿线实现移动标记因为只有一种标记的性能更好,但是当我添加多种标记时,性能却更差。

是否还有另一个性能更高的选项可以使标记沿SVG路径动画化?

如果没有另一种方法,我将尝试添加控件以停止/启动动画,但这将是最后的选择。

提前致谢!

命令

似乎确实为该stroke-dashoffset属性设置动画会导致大量计算。原始示例在Firefox中打开时导致CPU使用率约为50%。

还有另一种方法似乎可以提供更好的结果:使用手动递增stroke-dashoffsetand循环setInterval这是概念证明:

http://bl.ocks.org/kmandov/raw/a87de2dd49a21be9f95c/

这是我更新dashoffset的方法:

var lines = d3.selectAll('.flowline');

var offset = 1; 
setInterval(function() {
  lines.style('stroke-dashoffset', offset);
  offset += 1; 
}, 50);  

我知道它看起来不太好,但是(出乎意料的是)它的性能要比依靠CSS动画或过渡好得多。在Firefox中,我现在获得约15%的CPU使用率。

我可以想象,如果链接很多,这种方法将无法很好地执行,因为更新将花费很长时间。但这对于一些简单的用例来说是可行的,因为您可以线性地对固定数量的链接进行动画处理。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Jenkins在CPU使用率很高的情况下运行

来自分类Dev

openjdk zgc上的cpu使用率很高

来自分类Dev

Windows 10上的CPU使用率很高

来自分类Dev

我如何在不等待1秒的情况下采样进程的CPU使用率

来自分类Dev

如何在不最大化CPU使用率的情况下显示大量GMSPolylines?

来自分类Dev

Node.js的CPU使用率很高,如何调试?

来自分类Dev

如何在不使用step的情况下为变形设置动画?

来自分类Dev

SpriteKit中的CPU使用率很高

来自分类Dev

使用Objective-C,如何在不影响顶层的情况下为底层的帧位置设置动画?

来自分类Dev

Xorg:移动鼠标(Ubuntu 18.04)上的CPU使用率很高(94%)

来自分类Dev

在17.10上观看YouTube时,Firefox中的CPU使用率很高

来自分类Dev

WiFi 上的 Ubuntu 18.04 CPU 使用率很高(Intel 无线网卡 9620)

来自分类Dev

jQuery:如何在没有已知高度的情况下为高度变化设置动画?

来自分类Dev

如何在不分割字母的情况下为文本设置动画?

来自分类Dev

如何在不影响按钮边框的情况下为按钮的大小设置动画?

来自分类Dev

jQuery:如何在没有已知高度的情况下为高度变化设置动画?

来自分类Dev

如何在不影响导航栏高度的情况下为文本大小设置动画?

来自分类Dev

如何在不改变文字大小的情况下为每个字母设置动画

来自分类Dev

具有很高CPU使用率的gnome shell

来自分类Dev

Python服务器程序的CPU使用率很高

来自分类Dev

不构建时,Android Studio的cpu使用率很高

来自分类Dev

OS X Dock的内存和CPU使用率很高

来自分类Dev

具有很高CPU使用率的gnome shell

来自分类Dev

Google环聊的CPU使用率很高

来自分类Dev

标记使用率很高,标记Etwr使用非分页池的异常率很高

来自分类Dev

我的CSS动画的CPU使用率很高。我可以使用GPU减轻负担吗?

来自分类Dev

恒定的CPU使用率,无原因

来自分类Dev

如何在不使用设置器的情况下为类变量设置值

来自分类Dev

如何在命令行上获取Windows Pid的cpu%使用率?

Related 相关文章

  1. 1

    Jenkins在CPU使用率很高的情况下运行

  2. 2

    openjdk zgc上的cpu使用率很高

  3. 3

    Windows 10上的CPU使用率很高

  4. 4

    我如何在不等待1秒的情况下采样进程的CPU使用率

  5. 5

    如何在不最大化CPU使用率的情况下显示大量GMSPolylines?

  6. 6

    Node.js的CPU使用率很高,如何调试?

  7. 7

    如何在不使用step的情况下为变形设置动画?

  8. 8

    SpriteKit中的CPU使用率很高

  9. 9

    使用Objective-C,如何在不影响顶层的情况下为底层的帧位置设置动画?

  10. 10

    Xorg:移动鼠标(Ubuntu 18.04)上的CPU使用率很高(94%)

  11. 11

    在17.10上观看YouTube时,Firefox中的CPU使用率很高

  12. 12

    WiFi 上的 Ubuntu 18.04 CPU 使用率很高(Intel 无线网卡 9620)

  13. 13

    jQuery:如何在没有已知高度的情况下为高度变化设置动画?

  14. 14

    如何在不分割字母的情况下为文本设置动画?

  15. 15

    如何在不影响按钮边框的情况下为按钮的大小设置动画?

  16. 16

    jQuery:如何在没有已知高度的情况下为高度变化设置动画?

  17. 17

    如何在不影响导航栏高度的情况下为文本大小设置动画?

  18. 18

    如何在不改变文字大小的情况下为每个字母设置动画

  19. 19

    具有很高CPU使用率的gnome shell

  20. 20

    Python服务器程序的CPU使用率很高

  21. 21

    不构建时,Android Studio的cpu使用率很高

  22. 22

    OS X Dock的内存和CPU使用率很高

  23. 23

    具有很高CPU使用率的gnome shell

  24. 24

    Google环聊的CPU使用率很高

  25. 25

    标记使用率很高,标记Etwr使用非分页池的异常率很高

  26. 26

    我的CSS动画的CPU使用率很高。我可以使用GPU减轻负担吗?

  27. 27

    恒定的CPU使用率,无原因

  28. 28

    如何在不使用设置器的情况下为类变量设置值

  29. 29

    如何在命令行上获取Windows Pid的cpu%使用率?

热门标签

归档