在不同的地方,我看到了在提到图形绘制时使用的术语"rubberbanding"。在这种情况下,人们似乎建议使用XOR进行绘制,我得到的印象是,这个术语指的是一种特殊的绘制技术,用于避免重新绘制整个帧。
然而,我还没能找到任何确切定义"橡皮筋"一词含义的东西。只是从一般意义上讲,在不过多讨论实现细节的情况下,"橡皮筋"一词的含义是什么,它的目的是什么?
这是一种在不清除屏幕的情况下绘制形状的非常古老的技术。如果你想画一个移动的矩形,这个想法是只画上一帧和新帧之间的区别(添加新的部分,删除旧的部分,保留公共部分不变)。
XOR技巧是,如果你用它画一些东西,它会将你的颜色设置为帧缓冲区。如果你在同一区域再次用它画画,它会去除你的颜色。
据我所知,自90年代以来,这还没有用于交互式渲染(至少在类似PC的平台上)。
有两种含义。使用XOR是在20世纪70年代或80年代的GUI上实现橡皮筋的方法,当时计算机的速度不够快,无法以交互速率重新绘制整个屏幕。(除了一些英勇/疯狂的汇编语言努力。)
作为一种用户交互技术,橡皮筋可以通过在起点按下鼠标按钮,然后拖动到终点来绘制一条线,并不断更新这条线,就好像两者之间有一条"橡皮筋"一样。
在1984年第一台MacPaint和MacDraw问世后,它开始广泛使用。这在我们今天看来是显而易见的,但在当时大多数CAD程序都是由1完成的。单击起点2。移动并单击端点3。计算机在两者之间划出一条线。