我在gtk绘图区域小部件中使用OpenGL绘制一个立方体。现在我想将“clicked”等事件附加到多维数据集,以便可以选择拖放等。 我该怎么办?
答案 0 :(得分:5)
OpenGL不是一个场景图(* gah *我已经累了,再次写这个,再一次,再次)。它绘制事物。你在3D空间给它一堆三角形,它将它们投射到2D,根据你的愿望绘制它们,然后忘记它。
在绘制完立方体之后,OpenGL中不再有任何可以将其识别为连贯结构的东西。这完全取决于你的部分。
你要做的是:
要关注的关键字是“OpenGL对象选择”
以便可以选择拖放
顺便说一句:你不能只是在OpenGL中拖动“对象”,因为它不知道几何结构意义上的“对象”。 OpenGL指定对象,但这些对象实际上是抽象的数据源,如顶点和索引数据的纹理或缓冲区。什么都不会成为一个可操纵的场景。
如果您在场景中更改某些内容,使用OpenGL则必须完全重绘。