Exemple #1
0
        private void InitSettings(OpenGL gl)
        {
            логToolStripMenuItem.Checked = false;
            richTextBoxLog.Visible       = логToolStripMenuItem.Checked;

            плоскаяToolStripMenuItem.Checked = false;
            плаваняToolStripMenuItem.Checked = true;
            gl.ShadeModel(ShadeModel.Smooth);

            показыватьОсиToolStripMenuItem.Checked = false;
            scene.ShowAxis = показыватьОсиToolStripMenuItem.Checked;

            показыватьСеткуToolStripMenuItem.Checked = false;
            scene.ShowGrid = показыватьСеткуToolStripMenuItem.Checked;

            //colorDialogClear.Color = Color.FromArgb(255, 0, 0, 0);
            colorDialogClear.Color = Color.Black;
            clearColor             = new ColorF(colorDialogClear.Color);
            gl.ClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.alpha);

            //контролирует сравнение по глубине и обновление буфера глубины
            gl.Enable(OpenGL.GL_DEPTH_TEST);
            буферГлубиныToolStripMenuItem.Checked = true;

            gl.Disable(OpenGL.GL_LIGHTING);
            освещениеToolStripMenuItem.Checked = false;

            линейныйToolStripMenuItem.Checked = false;
            точечныйToolStripMenuItem.Checked = false;
            сплошнойToolStripMenuItem.Checked = true;
            openGLControl.OpenGL.PolygonMode(FaceMode.Front, PolygonMode.Filled);

            линейныйToolStripMenuItem1.Checked = true;
            точечныйToolStripMenuItem1.Checked = false;
            сплошнойToolStripMenuItem1.Checked = false;
            openGLControl.OpenGL.PolygonMode(FaceMode.Back, PolygonMode.Lines);

            gl.Enable(OpenGL.GL_CULL_FACE);
            удалятьНелицевыеГраниToolStripMenuItem.Checked = true;

            локальныйНаблюдательToolStripMenuItem.Checked = true;
            gl.LightModel(LightModelParameter.LocalViewer, 1);

            двустороннееОсвещениеToolStripMenuItem.Checked = false;
            gl.LightModel(LightModelParameter.TwoSide, 0);

            включитьИсточник0toolStripMenuItem.Checked = false;
            gl.Disable(OpenGL.GL_LIGHT0);

            включитьИсточник1ToolStripMenuItem.Checked = false;
            gl.Disable(OpenGL.GL_LIGHT1);

            включитьИсточник2ToolStripMenuItem.Checked = false;
            gl.Disable(OpenGL.GL_LIGHT2);

            timerMoveLight.Enabled = false;
            движениеИсточника0ToolStripMenuItem.Checked = false;

            //GL_BLEND (контролирует наложение RGBA величин)
            смещиваниеЦветовToolStripMenuItem.Checked = true;
            gl.Enable(OpenGL.GL_BLEND);

            openGLControl.OpenGL.LightModel(OpenGL.GL_LIGHT_MODEL_COLOR_CONTROL_EXT, OpenGL.GL_SEPARATE_SPECULAR_COLOR_EXT);
            зеркальноеОтражениеНаТекстурахToolStripMenuItem.Checked = true;
        }
 public IcosahedronAsSphere(ColorF color, Point3D position, float scaleKoef = 1)
     : base(color, position, scaleKoef)
 {
 }