Beispiel #1
0
        public Punto multPunto(Punto p, Matriz m)
        {
            Matriz mPunto = new Matriz(1, 3);

            mPunto.setData(p.X, 0, 0);
            mPunto.setData(p.Y, 0, 1);
            mPunto.setData(p.H, 0, 2);

            Matriz solucion = new Matriz(1, 3);

            for (int i = 0; i < 1; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    for (int k = 0; k < 3; k++)
                    {
                        solucion.setData(solucion.getData(i, j) + mPunto.getData(i, k) * m.getData(k, j), i, j);
                    }
                }
            }

            p.X = solucion.getData(0, 0);
            p.Y = solucion.getData(0, 1);
            p.H = solucion.getData(0, 2);

            return(p);
        }
Beispiel #2
0
        private Matriz escalacion(float x, float y)
        {
            Matriz m = identidad();

            m.setData(x, 0, 0);
            m.setData(y, 1, 1);
            return(m);
        }
Beispiel #3
0
        private Matriz traslacion(float x, float y)
        {
            Matriz m = identidad();

            m.setData(x, 2, 0);
            m.setData(y, 2, 1);
            return(m);
        }
Beispiel #4
0
        private Matriz reflexionC()
        {
            Matriz m = identidad();

            m.setData(-1, 0, 0);
            m.setData(-1, 1, 1);
            return(m);
        }
Beispiel #5
0
        private Matriz rotacion(float angulo)
        {
            Matriz m = identidad();

            angulo = angulo * ((float)Math.PI / 180);
            m.setData((float)Math.Cos(angulo), 0, 0);
            m.setData((float)Math.Sin(angulo), 0, 1);
            m.setData(-(float)Math.Sin(angulo), 1, 0);
            m.setData((float)Math.Cos(angulo), 1, 1);
            return(m);
        }
Beispiel #6
0
 public Transformacion()
 {
     matrix = new Matriz();
     for (int i = 0; i < 3; i++)
     {
         for (int j = 0; j < 3; j++)
         {
             if (i == j)
             {
                 matrix.setData(1, i, j);
             }
             else
             {
                 matrix.setData(0, i, j);
             }
         }
     }
 }
Beispiel #7
0
        private Matriz identidad()
        {
            Matriz m = new Matriz();

            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    if (i == j)
                    {
                        m.setData(1, i, j);
                    }
                    else
                    {
                        m.setData(0, i, j);
                    }
                }
            }
            return(m);
        }
Beispiel #8
0
        private Matriz multMatriz(Matriz a, Matriz b)
        {
            Matriz res = new Matriz();

            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    for (int k = 0; k < 3; k++)
                    {
                        res.setData(res.getData(i, j) + a.getData(i, k) * b.getData(k, j), i, j);
                    }
                }
            }

            return(res);
        }