【发布时间】:2017-05-22 13:46:48
【问题描述】:
我有一个 pixi.js html 画布,上面有数千个对象,我希望用户能够使用通常的矩形选择区域放大它。实现这一点的蛮力方法是在每次鼠标移动时绘制矩形并重新渲染整个舞台。但这似乎是对 CPU 的浪费。另外,这在用户界面中很常见,我怀疑 pixi.js 中已经有一些功能或解决此问题的插件。
如果没有插件:如果我可以在用户按下鼠标按钮时将整个缓冲区保存到某个第二个缓冲区,我可以在顶部绘制矩形,并且在每次鼠标移动时,将第二个缓冲区复制回主缓冲区绘制矩形之前的缓冲区。这意味着我不必在每次鼠标移动时都重新绘制所有内容。但我不认为可以将当前缓冲区克隆到某个命名的辅助缓冲区。
另一种选择是在画布顶部移动一个矩形 DOM 对象,但我担心当前像素位置很难与 pixi.js / html5 画布像素相关。
有没有更好的方法?还是我缺少的一些插件/搜索引擎关键字?您将如何在 html canvas 或 pixi.js 中实现橡皮筋?
【问题讨论】:
标签: javascript html5-canvas pixi.js