通常用于将输入映射到显示器的数据结构是什么

What is the data structure typically used to map input to the display?

本文关键字:数据结构 是什么 显示器 输入 映射 通常用于      更新时间:2023-10-16

我的问题是,在给定输入的情况下,如何将该输入映射到显示区域。您也可以将此视为将输入映射到GUI的小部件,但我的意图只是关于一般情况。

我假设当硬件传感器/OS触发输入时,我会得到一对[x,y]坐标。

我确信,一个用作查找表的数组就足够了,您可以创建一个2x2矩阵,其中每个元素都指向该给定像素的小部件。

但这种方法存在一个问题,数组是一种"生疏"的数据结构,根本无法缩放,我并不相信有人会使用简单的数组来进行这种映射,例如,通过对窗口进行简单的重新缩放,你将不得不重新创建该数组,这在计算和内存分配方面是昂贵的,而不考虑必须在内部保留小部件的层次结构和布局这一事实,因此需要一个更灵活的数据结构,可能具有随机访问功能和非常低的复杂性,大约为O(1)或O(log(N))。

我想不出一个好的数据结构能很好地应对这种情况,那么GUI系统通常使用什么来将输入映射到单个像素呢?

我相信您想要的是一个四叉树。