Exemplo n.º 1
0
        /// <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();  // Перерисовка компанента на форме
        }
Exemplo n.º 2
0
        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();
        }