Beispiel #1
0
        public static Arrow ReOrient(this CubieFace face, Arrow direction)
        {
            face.Check(direction);

            if (face.Cubie.Dot(direction) > 0)
            {
                return(face.Face.Negate());
            }

            return(direction);
        }
Beispiel #2
0
        public static CubieFace Neighbour(this CubieFace face, Arrow direction)
        {
            face.Check(direction);

            if (face.Cubie.Dot(direction) > 0)
            {
                return(new CubieFace(face.Cubie, direction));
            }

            var cubie = face.Cubie.Add(direction);

            return(new CubieFace(cubie, face.Face));
        }