示例#1
0
        private void pushMove(float x, float y, float z, int qt)
        {
            Transformacao4D tr = new Transformacao4D();

            tr.AtribuirTranslacao(x / 3, y / 3, z / 3);
            this.movimentos.Add(tr);
            this.qtMovimentos.Add(qt * 3);
        }
示例#2
0
        private void EyeRotate(float n)
        {
            Transformacao4D matA = new Transformacao4D();

            matA.AtribuirTranslacao(camera.At.X, camera.At.Y, camera.At.Z);
            Transformacao4D matB = new Transformacao4D();

            matB.AtribuirRotacaoY(n * Math.PI / 120);
            matA = matA.MultiplicarMatriz(matB);
            matB.AtribuirTranslacao(-1 * camera.At.X, -1 * camera.At.Y, -1 * camera.At.Z);
            matA            = matA.MultiplicarMatriz(matB);
            this.camera.Eye = PontoToVector(matA.MultiplicarPonto(VectorToPonto(this.camera.Eye)));
        }
示例#3
0
        protected override void OnLoad(EventArgs e)
        {
            this.pushMove(1, 0, 0, 3);

            Transformacao4D tr    = new Transformacao4D();
            Transformacao4D trAux = new Transformacao4D();

            trAux.AtribuirTranslacao(0, 0.3, 0);
            tr.AtribuirRotacaoX(Math.PI / 33);
            this.movimentos.Add(trAux.MultiplicarMatriz(tr));
            this.qtMovimentos.Add(33);
            this.pushMove(1, 0, 0, 4);
            this.movimentos.Add(trAux.MultiplicarMatriz(tr));
            this.qtMovimentos.Add(33);
            this.pushMove(1, 0, 0, 3);


            this.pushMove(0, 0, 1, 10);
            this.pushMove(0, 1, 0, 10);
            this.pushMove(0, 0, -1, 10);
            this.pushMove(-1, 0, 0, 10);
            this.pushMove(0, -1, 0, 5);

            tr    = new Transformacao4D();
            trAux = new Transformacao4D();
            trAux.AtribuirTranslacao(0.3, 0, 0);
            tr.AtribuirRotacaoY(Math.PI / 33);
            this.movimentos.Add(trAux.MultiplicarMatriz(tr));
            this.qtMovimentos.Add(33);

            this.pushMove(0, 0, 1, 10);
            this.pushMove(0, -1, 0, 5);
            this.pushMove(1, 0, 0, 10);
            this.pushMove(0, 0, -1, 10);
            this.movimentos.Add(trAux.MultiplicarMatriz(tr));
            this.qtMovimentos.Add(33);
            this.pushMove(1, 0, 0, 10);


            base.OnLoad(e);
            Console.WriteLine(" --- Ajuda / Teclas: ");
            Console.WriteLine(" [  H     ] mostra teclas usadas. ");

            // obj_Retangulo = new Retangulo("A", null, new Ponto4D(50, 50, 0), new Ponto4D(150, 150, 0));
            // objetosLista.Add(obj_Retangulo);
            // objetoSelecionado = obj_Retangulo;


            // obj_Cilindro = new Cilindro("D", null);
            // objetosLista.Add(obj_Cilindro);
            // obj_Cilindro.EscalaXYZ(50, 50, 50);
            // obj_Cilindro.TranslacaoXYZ(150, 0, 0);

            // obj_Esfera = new Esfera("E", null);
            // objetosLista.Add(obj_Esfera);
            // obj_Esfera.EscalaXYZ(50, 50, 50);
            // obj_Esfera.TranslacaoXYZ(200, 0, 0);

            // obj_Cone = new Cone("F", null);
            // objetosLista.Add(obj_Cone);
            // obj_Cone.EscalaXYZ(50, 50, 50);
            // obj_Cone.TranslacaoXYZ(250,0,0);

            // obj_Cubo = new Cubo("G", null);
            // objetosLista.Add(obj_Cubo);
            // obj_Cubo.EscalaXYZ(50, 50, 50);

            obj_Cubo = new Cubo("G", null);
            objetosLista.Add(obj_Cubo);
            obj_Cubo.EscalaXYZ(50, 50, 50);

            objetoSelecionado = obj_Cubo;

            camera.At  = new Vector3(0, 0, 0);
            camera.Eye = new Vector3(1000, 1000, 1000);
            // camera.Eye = new Vector3(0, 0, 1000);
            camera.Near = 100.0f;
            camera.Far  = 4000.0f;

            GL.ClearColor(127, 127, 127, 255);
            GL.Enable(EnableCap.DepthTest);
            // GL.Enable(EnableCap.CullFace);
            GL.Disable(EnableCap.CullFace);
        }