int iHeightBlance;
for (int j = 0; j < m_nCol - 1; ++j)
{
iHeightBlance = (m_pEle[j] - minHeight[j]);
if (iHeightBlance > 0)
{
glBegin(GL_LINE_STRIP);
// 需要绘制线,y从i * m_iRow + j到i * m_iRow + j - iHeightBlance,x、z不变
for (int i = 0; i < m_nRow - 1; i++)
{
x1 = 2.0f*(float)(j)/m_nCol-1.0f;
z1 = 2.0f*(float)(i)/m_nRow-1.0f;
y1 = (float)(m_pEle[i*m_nCol+j])/(float)MaxHeight;
colorR = (x1 + 1) / 2.0f;
colorG=1.0f-colorR;
colorB=1.0f;
glColor3f(colorR,colorG,colorB);
// 低点
glVertex3f(x1,y1-(float)iHeightBlance/MaxHeight,z1);
}
glEnd();
}
}
在原位置重画
最新推荐文章于 2022-05-11 17:29:48 发布