试图限制在Visual Studio中使用OpenTK绘制的内容

时间:2015-02-16 22:15:22

标签: c# opengl opentk

我有一个问题,我必须读取一些3维坐标并将其转换为2维并绘制结果点。我这样做没有问题,但我还必须将绘图区域和窗口限制为结果点。

在一个示例中,最小X值是0.12并且最大值是0.78。最小Y值为0.109,最大值为0.571。基本上我想要这些坐标来定义视图大小 - 也就是说,我希望将这些坐标转换为像素并占据整个窗口。 xPercent和yPercent应该是整个事情的额外5%的余量。所有这些值都是正确计算的,我想我只是错误地使用了GL.Ortho(或者甚至可能没有使用正确的东西)。我附上了目前正在出现的图像。窗口外有更多的点,“最高”点需要靠近窗口顶部。

是的,这是家庭作业,但老师正在用C语言指导,我想用C#做作业。这是我需要帮助的唯一部分,我一直在寻找几个小时。

此代码位于我的OnRenderFrame方法中。

GL.MatrixMode(MatrixMode.Projection);
GL.LoadIdentity();
GL.Ortho(xMin - xPercent, xMax + xPercent, yMin - yPercent, yMax + yPercent, -1.0, 1.0);

图片:http://i.imgur.com/l6kdKsZ.png

1 个答案:

答案 0 :(得分:0)

我明白了。我正确地使用了GL.Ortho,我只是没有在我的一个循环中正确地重置一个值。