private void glView1_OpenGLDraw(object sender, SharpGL.RenderEventArgs args) { SharpGL.OpenGL gl = this.glView1.OpenGL; gl.Clear(SharpGL.OpenGL.GL_COLOR_BUFFER_BIT | SharpGL.OpenGL.GL_DEPTH_BUFFER_BIT); //gl.ClearColor(1f, 1f, 1f, 1f); gl.LoadIdentity(); gl.Translate(0.0f, 0.0f, -12.0f); GLHelper.DrawBackground(gl); float transX = movedX / 20; float transY = movedY / 20; gl.Translate(transX, transY, 0.0f); gl.Rotate(axisRotateX, 1.0f, 0.0f, 0.0f); gl.Rotate(axisRotateY, 0.0f, 1.0f, 0.0f); gl.Rotate(axisRotateZ, 0.0f, 0.0f, 1.0f); gl.Scale(scaleFactor, scaleFactor, scaleFactor); if (doDrawDefault) { //GLHelper.DrawNet(gl, 100, 5); } if (doDrawAxis) { GLHelper.DrawAxis3D(gl, 0, 0, 0, -3, 10, -3, 10, -3, 10, 3, 1); } if (doDrawSolids) { //... GLHelper.DrawBox(gl, 10, 4, 4, Color.Orange, Color.OrangeRed); gl.Translate(5.0f, 3.0f, 0.0f); GLHelper.DrawPiram(gl, 10, 3, 4, System.Drawing.Color.DarkGreen, System.Drawing.Color.LightGreen); gl.Translate(-2.5f, 4.0f, 0.0f); GLHelper.DrawCylinder(gl, 5, 5, 7, Color.PaleVioletRed, Color.MediumVioletRed); gl.Translate(0.0f, 8.0f, 0.0f); GLHelper.DrawCylinder(gl, 5, 1, 4, Color.Chocolate, Color.Red); gl.Translate(0.0f, 5.0f, 0.0f); GLHelper.DrawSphere(gl, 3, Color.LightBlue, Color.Blue); } gl.LoadIdentity(); }
private void openGLControl1_OpenGLDraw(object sender, SharpGL.RenderEventArgs args) { SharpGL.OpenGL gl = this.openGLControl1.OpenGL; gl.Clear(SharpGL.OpenGL.GL_COLOR_BUFFER_BIT | SharpGL.OpenGL.GL_DEPTH_BUFFER_BIT); // Очистка скрина gl.LoadIdentity(); // сброс gl.Translate(0.0f, 0.0f, -6.0f); // переместить влево gl.Rotate(axis_rotate_X, 1.0f, 0.0f, 0.0f); gl.Rotate(axis_rotate_Y, 0.0f, 1.0f, 0.0f); gl.Rotate(axis_rotate_Z, 0.0f, 0.0f, 1.0f); gl.Begin(SharpGL.OpenGL.GL_TRIANGLES); // начать рисовать пирамиду gl.Color(1.0f, 0.0f, 0.0f); //красный gl.Vertex(0.0f, 1.0f, 0.0f); // центр пирамиды gl.Color(0.0f, 1.0f, 0.0f); //Зеленый gl.Vertex(-1.0f, -1.0f, 1.0f); // левая сторона пирамиды gl.Color(0.0f, 0.0f, 1.0f); // Синий gl.Vertex(1.0f, -1.0f, 1.0f); // права сторона пирамиды gl.Color(1.0f, 0.0f, 0.0f); //красный gl.Vertex(0.0f, 1.0f, 0.0f); // центр пирамиды gl.Color(0.0f, 0.0f, 1.0f); //Зеленый gl.Vertex(1.0f, -1.0f, 1.0f); // левая сторона пирамиды gl.Color(0.0f, 1.0f, 0.0f); // Синий gl.Vertex(1.0f, -1.0f, -1.0f); // права сторона пирамиды gl.Color(1.0f, 0.0f, 0.0f); //красный gl.Vertex(0.0f, 1.0f, 0.0f); // центр пирамиды gl.Color(0.0f, 1.0f, 0.0f); //Зеленый gl.Vertex(1.0f, -1.0f, -1.0f); // левая сторона пирамиды gl.Color(0.0f, 0.0f, 1.0f); // Синий gl.Vertex(-1.0f, -1.0f, -1.0f); // права сторона пирамиды gl.Color(1.0f, 0.0f, 0.0f); //красный gl.Vertex(0.0f, 1.0f, 0.0f); // центр пирамиды gl.Color(0.0f, 0.0f, 1.0f); //Зеленый gl.Vertex(-1.0f, -1.0f, -1.0f); // левая сторона пирамиды gl.Color(0.0f, 1.0f, 0.0f); // Синий gl.Vertex(-1.0f, -1.0f, 1.0f); // права сторона пирамиды gl.End(); gl.LoadIdentity(); }
protected virtual void OnOpenGLDraw(object sender, SharpGL.RenderEventArgs args) { }
private void sceneControl_OpenGLDraw(object sender, SharpGL.RenderEventArgs args) { }