/// <summary> /// отрисовка 'элементов glControl'а /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void glControl1_Paint(object sender, PaintEventArgs e) { GL.Ortho(-1, 1, -1, 1, -1, 1); // Указываю систему координат GL.Viewport(0, 0, glControl1.Width, glControl1.Height); // Использовать всю поверхность GLControl под рисование GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); GL.MatrixMode(MatrixMode.Projection); // Указываем матрицу с котрой будем работать GL.LoadIdentity(); // Сброс в еденичную матрицу Matrix4 dimetry = new Matrix4( new Vector4(0.866f, 0, -0.5f, 0), new Vector4(-0.223f, 0.894f, -0.387f, 0), new Vector4(0, 0, 0, 0), new Vector4(0, 0, 0, 1) ); //Matrix4 perspective = Matrix4.CreatePerspectiveFieldOfView(0.5f, glControl1.Width / glControl1.Height, 1, 100); //GL.LoadMatrix(ref perspective); // Загрузка настройки проекции GL.LoadMatrix(ref dimetry); GL.ClearColor(Color.White); guitar = new Guitar(); guitar.tune(TrUgolEX, TrUgolEY, R); guitar.scale(0.1f, 0.1f, 0.1f); guitar.DrawLines(); glControl1.SwapBuffers(); // Выводжу содержиоме буффкера OPenGl в буффер OpenTK компанента glControl1.Invalidate(); // Перерисовка компанента на форме }
private void glControl1_Paint(object sender, PaintEventArgs e) { if (!loaded) { return; } GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); guitar = new Guitar(); guitar.scale(6, 6, 6); //guitar.tune(TrUgolEX, TrUgolEY, R); guitar.DrawLines(); guitar.pouring(texture); label1.Text = TrUgolEX + " " + TrUgolEY + " " + f; f += 0.01f; glControl1.SwapBuffers(); }