用C ++绘制矩形的函数

时间:2016-09-06 11:14:11

标签: c++ opengl geometry

我尝试编写一个生成矩形的函数,该矩形将以下信息作为输入:

所需矩形的

topLeftPoint (宽度和高度)。结果它应该返回相应的顶点。我正在使用OpenGL坐标系。

topLeftPoint 可以是两个intsVec2的简单结构。

以下是我尝试解决此任务的示例: example

 float verticesOfRectangle[] =   
{  
   in.x(), in.y(),  
   in.x(), in.y() - h,  
   in.x() + w, in.y()-h,  
   in.x() + w, in.y(),  
}

我的代码出了什么问题?我的最终形状看起来不像一个矩形。它看起来更像是这样:final shape

2 个答案:

答案 0 :(得分:0)

猜猜,按照这样重新排序:

float verticesOfRectangle[] =   
{  
   in.x(), in.y() - h,  
   in.x() + w, in.y() - h,  
   in.x(), in.y(),  
   in.x() + w, in.y(),  
}

答案 1 :(得分:-1)

这可以帮到你:

void glRecti(GLint x1, GLint y1, GLint x1+w, GLint y1-h);
  

顶点是矩形的两个对角端点。 (x1,y1)是最左边的点,而(x1+w, y1-h)是最右边的点,w为宽度,h为矩形的高度