Esempio n. 1
0
        public C3DSize Transforme(C3DSize size)
        {
            CVecteur3D vecteur = new CVecteur3D(size.With, size.Height, size.Depth, 0.0);

            vecteur = this * vecteur;
            return(new C3DSize((int)Math.Round(vecteur[0]), (int)Math.Round(vecteur[1]), (int)Math.Round(vecteur[2])));
        }
Esempio n. 2
0
        public C3DPoint Transforme(C3DPoint point)
        {
            CVecteur3D vecteur = new CVecteur3D(point.X, point.Y, point.Z, 1.0);

            vecteur = this * vecteur;
            return(new C3DPoint((int)vecteur[0], (int)vecteur[1], (int)vecteur[2]));
        }
Esempio n. 3
0
        public static CVecteur3D operator *(CTransformation3D matrice, CVecteur3D vecteur)
        {
            CVecteur3D newVecteur = new CVecteur3D(0, 0, 0, 0);

            for (int nLigne = 0; nLigne < 4; nLigne++)
            {
                double fVal = 0;
                for (int nTmp = 0; nTmp < 4; nTmp++)
                {
                    fVal += matrice[nLigne, nTmp] * vecteur[nTmp];
                }
                newVecteur[nLigne] = fVal;
            }
            return(newVecteur);
        }