private void button2_Click(object sender, EventArgs e) { if (!PointInGrap.Enabled) { PointInGrap.Start(); } }
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(); }
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(); }
private void button1_Click(object sender, EventArgs e) { PointInGrap.Start(); }