Exemplo n.º 1
0
 private void button2_Click(object sender, EventArgs e)
 {
     if (!PointInGrap.Enabled)
     {
         PointInGrap.Start();
     }
 }
Exemplo n.º 2
0
        private void AnT_Load(object sender, EventArgs e)
        {
            GL.Viewport(0, 0, AnT.Width, AnT.Height);
            GL.MatrixMode(MatrixMode.Projection);
            GL.LoadIdentity();

            if (AnT.Width <= AnT.Height)
            {
                ScreenW = 30.0;
                ScreenH = 30.0 * AnT.Height / AnT.Width;
                GL.Ortho(0.0, ScreenW, 0.0, ScreenH, -1, 1);
            }
            else
            {
                ScreenH = 30.0;
                ScreenW = 30.0 * (float)AnT.Width / (float)AnT.Height;
                GL.Ortho(0.0, 30.0 * (float)AnT.Width / (float)AnT.Height, 0.0, 30.0, -1, 1);
            }

            devY = ScreenH / AnT.Height;
            devX = ScreenW / AnT.Width;

            GL.MatrixMode(MatrixMode.Modelview);

            PointInGrap.Start();
        }
Exemplo n.º 3
0
        private void Form1_Load(object sender, EventArgs e)
        {
            //  Get the OpenGL object.
            OpenGL gl = AnT.OpenGL;

            //  Clear the color and depth buffer.
            gl.Clear(OpenGL.GL_COLOR_BUFFER_BIT | OpenGL.GL_DEPTH_BUFFER_BIT);
            gl.Viewport(0, 0, AnT.Size.Width, AnT.Size.Height);
            gl.MatrixMode(OpenGL.GL_PROJECTION);
            //  Load the identity matrix.
            gl.LoadIdentity();
            //gl.Ortho(-AnT.Size.Width/2.0f, AnT.Size.Width / 2.0f, -AnT.Size.Height / 2.0f, AnT.Size.Height / 2.0f, 0.0f, 1.0f);

            //gl.Ortho(-10, 10, -10, 10, -10, 10);

            // размер проекции в зависимости от размеров AnT
            if ((float)AnT.Size.Width <= (float)AnT.Size.Height)
            {
                ScreenW = size_p;
                ScreenH = size_p * (float)AnT.Size.Height / (float)AnT.Size.Width;
                //gl.Ortho2D(0.0, ScreenW, 0.0, ScreenH);
            }
            else
            {
                ScreenW = size_p * (float)AnT.Size.Width / (float)AnT.Size.Width;
                ScreenH = size_p;
                //gl.Ortho2D(0.0, ScreenW, 0.0, ScreenH);
            }
            gl.Ortho2D(-ScreenW, ScreenW, -ScreenH, ScreenH);

            // коэффициенты для перевода координат оконной системы в систему OpenGL
            devX = (float)(ScreenW * 2.0f) / (float)AnT.Size.Width;
            devY = (float)(ScreenH * 2.0f) / (float)AnT.Size.Height;

            // установка объектно-видовой матрицы
            gl.MatrixMode(OpenGL.GL_MODELVIEW);

            gl.Enable(OpenGL.GL_BLEND);
            //gl.BlendEquationEXT(OpenGL.GL_FUNC_ADD_EXT);
            gl.BlendFunc(OpenGL.GL_SRC_ALPHA, OpenGL.GL_ONE_MINUS_SRC_ALPHA);
            //gl.BlendFunc(OpenGL.GL_DST_ALPHA, OpenGL.GL_ONE_MINUS_SRC_ALPHA);
            //gl.BlendFunc(OpenGL.GL_ONE, OpenGL.GL_ONE_MINUS_SRC_ALPHA);
            //gl.BlendFunc(OpenGL.GL_ZERO, OpenGL.GL_ONE_MINUS_CONSTANT_ALPHA_EXT);

            //gl.Enable(OpenGL.GL_POINT_SMOOTH);
            gl.Disable(OpenGL.GL_DEPTH_TEST);

            //gl.BlendColor(0.1f, 0.1f, 0.1f, 0.0f);

            // gl.BlendFunc(OpenGL.GL_SRC_ALPHA, OpenGL.GL_ONE);
            gl.LoadIdentity();

            // старт счетчика таймера
            PointInGrap.Start();
        }
Exemplo n.º 4
0
 private void button1_Click(object sender, EventArgs e)
 {
     PointInGrap.Start();
 }