我本学期正在上大学的计算机图形学课程,我们的第一个任务是建立一个与Microsoft Paint类似的程序。我们需要设置用于绘制具有不同颜色,大小和透明度参数的形状的选项。
我在查找有关如何编程鼠标拖动时以给定形状绘制功能的信息时遇到了麻烦。我不是在代码中寻求解决方案,而是在哪里研究可能实现此目标的功能的指南。
我是OpenGL的新手(但不是C ++),我拥有“带有OpenGL的计算机图形学”第四版。由Hearn&Baker撰写。这些主题均未暗示此功能。
最佳答案
您可能要问的是创建一个缓冲窗口,或者切换为在前缓冲区上绘制,并在按下(并拖动)按钮时在鼠标指针位置绘制一些形状,而没有清除它们之间的前缓冲区。为了增强鲁棒性,请在“帧缓冲区对象”附加纹理上绘制,以便拖动某些窗口不会破坏用户的绘制。
关键字:将视口设置为“窗口大小”。将投影正交投影到窗口边界时,请勿使用glClear(重置图片除外)。