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

Trying to constrain what's being drawn using OpenTK in Visual Studio

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

在一个示例中,最小 X 值为 0.12,最大值为 0.78。 Y 值的最小值为 0.109,最大值为 0.571。基本上我希望这些坐标定义视图大小——也就是说,我希望将这些坐标转换为像素并占据整个 window。 xPercent 和 yPercent 应该是围绕整个事物额外增加 5% 的余量。所有这些值都计算正确,我想我只是错误地使用了 GL.Ortho (或者甚至可能没有使用正确的东西)。我附上了当前显示的图像。 window 之外还有更多点,"highest" 点需要更靠近 window 的顶部。

是的,这是作业,但是老师是用 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

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