本人新手,想帮忙问一下各位大侠,如何用opengl绘制实时监测数据曲线,就是在收到一个数据马上形成一个点,然后很快这个点连成一条曲线。

解决方案 »

  1.   

    如果不是要画3D图,就不需要用OPENGL来画,直接用视图里的OnDraw函数的参数CDC *pDC就可以画了,用两个函数就可以:pDC->MoveTo(x1,y1);pDC->LineTo(x2,y2);或者在对话框里的用OnPaint函数里的ClientDC dc(this);这个dc变量来画:dc.MoveTo(x1,y1);dc->LineTo(x2,y2);这样就可以连成曲线了,数据越多曲线越平滑
      

  2.   

    对话框的说错了,不是ClientDC,应该是:CPaintDC dc(this);
      

  3.   

    因为整个程序都要用opengl进行编译,还需要将用soildworks画的三维图插入到opengl程序中的,这样的话能用您说的方法吗?还有其他的方法么?希望高手解答一下,谢谢!
      

  4.   

    因为整个程序都要用opengl进行编译,还需要将用soildworks画的三维图插入到opengl程序中的。
    有其他有效的方法么?谢谢!
      

  5.   

    glBegin(GL_LINE_STRIP);
    int i=0;
    while(i<200)
    {
    if(dataX[i]!=-1 && dataY[i]!=-1 && dataZ[i]!=-1)
    {
       glVertex3i(dataX[i]/5,dataY[i],dataZ[i]/5);
       glVertex3i(dataX[i+1]/5,dataY[i+1],dataZ[i+1]/5);
    }
    i++;
    }
    glEnd();  
    取值小的时间,可以做的比较平滑。(data保存的数据),希望能有用。