Contact me: hankecnc@gmail.com

工作区性能 #216

推推 grbl 3年前 (2023-02-03) 236次浏览
关闭
jorgerobles 打开了这个问题 2017 年 3 月 15 日 · 9条评论
关闭

工作区性能#216

jorgerobles 打开了这个问题 2017 年 3 月 15 日 · 9条评论

评论

工作区性能 #216
合作者

@tbfleming在处理相同的旧 svg 时,我意识到,Workspace::setCanvas::draw 始终在渲染,即使没有相机移动或任何其他工作区活动(没有活动的粗线)

我们是否有办法缓存渲染(如 shouldComponentUpdate,但用于画布)?
也许我们应该进行帧缓冲并进行选择性更新?(例如..粗线)

工作区性能 #216
成员

是的,我们应该。

工作区性能 #216
合作者作者

@tbfleming是否测试了 monkeypatch 缓存,但未提交,如果与shouldComponentUpdate.

  • (+) 性能最高
  • (-) 禁用花哨的选择动画

我尝试使用帧缓冲区,但超出了我的能力范围:)

let draw = () => {
            if (!this.canvas)
                return;

            if (this.__updating) {
                this.__updating=false;
            } else {
                return requestAnimationFrame(draw);
            }

  componentDidUpdate(){
        this.__updating=true;
    }
工作区性能 #216
domenic-d 评论了 2017 年 6 月 8 日  

我们刚刚测试了最近的“显示光栅预览”功能。
输入值时有很多延迟,因为计算是在输入每个数字时完成的。例如,如果我们想将对比度设置为 100,则会针对 1、10 和 100 执行计算。

对于这些类型的调整,确实不需要如此高的交互性。

在按下“输入”后处理该值就不会那么令人沮丧了。

这可能吗?

工作区性能 #216
合作者作者

@tbfleming将蛋糕显示分层到不同的帧缓冲区有多难?
我在显示缓存上做的 monkeypatch 在作业运行时无效。而这正是我希望避免的事情,因此矢量重新渲染不会干扰(阻塞 cpu)工作和反馈交互。

工作区性能 #216
成员

不难。

工作区性能 #216
成员

@jorgerobles它现在使用帧缓冲区来缓存文档、文档选择和 gcode 预览。它还没有缓存激光预览。

工作区性能 #216
合作者作者

我向您鞠躬,好先生!

工作区性能 #216
合作者作者

那么,我所做的“显示缓存”设置可以删除吗?

工作区性能 #216
成员

大概