Python 我应该如何对时间线的后端进行编码
我想创建一个带有时间线的程序,就像你在视频编辑器中看到的那样。放置在该时间线上的事件将有开始时间和结束时间(或长度?)。它可以自由地前后移动时间轴的播放头,甚至可以控制它的速度。重要的是,当播放头在对象上方移动时,“进入”或“退出”对象时,播放头应触发事件。我不想使用计时器,因为可能会有很多这样的事件,而且可能效率很低 什么是看待这个问题的最佳方式?我已经编写了图形部分(使用QGraphicsView,其中使用自定义QGraphicsSitems表示事件),现在我正在寻找实现后端的最佳方法Python 我应该如何对时间线的后端进行编码,python,qt,data-structures,timeline,Python,Qt,Data Structures,Timeline,我想创建一个带有时间线的程序,就像你在视频编辑器中看到的那样。放置在该时间线上的事件将有开始时间和结束时间(或长度?)。它可以自由地前后移动时间轴的播放头,甚至可以控制它的速度。重要的是,当播放头在对象上方移动时,“进入”或“退出”对象时,播放头应触发事件。我不想使用计时器,因为可能会有很多这样的事件,而且可能效率很低 什么是看待这个问题的最佳方式?我已经编写了图形部分(使用QGraphicsView,其中使用自定义QGraphicsSitems表示事件),现在我正在寻找实现后端的最佳方法 我的
我的问题有意义吗?它是否太模糊了?您似乎想要一个能够有效支持以下操作的数据结构:
希望这有帮助 你是说这个项目的时间线吗?playhead应该在“移动”时间线元素时触发事件,还是仅在发布时才触发事件?“那就不一样了。”琼克莱门茨说。实际上,在问这个问题之前,我浏览了OpenShot的源代码。但我不清楚时间线是如何实现的。@frb最好在播放头“进入”对象时触发“进入”事件,在“退出”时触发“退出”事件。向后或向前。谢谢!这看起来可能正是我要找的。我可能需要花一点时间来了解这一切,但据我所知,它让我想起了BSP树,它是QGraphicscene中使用的数据结构。我将在这里补充一点:它是对区间树数据结构的一个实用解释。