首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

。小弟我这样画多个多边形逼近圆为什么只有一条直线

2013-03-22 
求助。我这样画多个多边形逼近圆为什么只有一条直线?SharpGL.OpenGL gl this.openGLControl1.OpenGLgl.C

求助。我这样画多个多边形逼近圆为什么只有一条直线?

    SharpGL.OpenGL gl = this.openGLControl1.OpenGL;

            gl.Clear(OpenGL.COLOR_BUFFER_BIT | OpenGL.DEPTH_BUFFER_BIT);
   

            gl.LoadIdentity();
           gl.Translate(0.0f, 0.0f, -12.0f);
           
    

           int i;
           float testa = 2.0f / 50;
           gl.Begin(OpenGL.QUAD_STRIP);
           gl.Color(1.0f, 1.0f, 1.0f);
           for ( i = 0; i < 50; i++)
            gl.Vertex(-1.0f + i * testa,i*testa* Math.Tanh(90 - 45 / 25 * i), 0.0f);
           for (i = 49; i > 0; i--)
               gl.Vertex(-1.0f + i * testa,-i * testa * Math.Tanh(90 - 45 / 25 * i), 0.0f);
        
           gl.End();
           gl.Flush();



这里是画一个圆心在(0,0,0)半径为1的圆,不过结果却是一条从(0,1,0)到(0,-1,0)的直线。
[解决办法]
没用过这个,不过给你的建议是把Vertex中的三个参数先用算出来
float x=-0.1f + i * testa;
???

然后debug看看怎么回事

热点排行