
大约一个多星期前,作为Telegram竞赛的一部分,我不得不投入SVG,数学公式,优化和动画的“魔术世界”。 竞争任务是在JS上创建一个相当简单的图表,但是该任务的某些细微差别和对性能的强调使它变得有趣。 考虑到要创造一种能够赢得胜利的东西,有必要比前端开发世界中的典型(而不是如此)项目的通常门槛值更深一些。
它没有完成工作,但是这次并没有浪费。 主要发现是能够完全使用SVG中的3D图形! 创建模型,在选定的轴上旋转,脚本动画等等-所有这些都可以在此处和现在使用。
最重要的
将SVG元素初始化为3D:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" axisZ="true">
在给定轴上的旋转:
polyLine.rotateX(45); polyLine.rotateY(90);
添加场景并开始动画:
polyLine.addAnimScene('rotateX', 45); polyLine.addAnimScene('rotateZ', 60); ... polyLine.runAnimScene(delay);
演示版
https://shtange.imtqy.com/svg-3d/ ( 来源 )