//public static bool GetNeighbourIndexIn(int fromIndex, int fromTriIndex, int toIndex, out int result, MirrorAxis shiftedOnAxis) //{ // CubeRepresentation cube = new CubeRepresentation(toIndex); // cube.MirrorRepresentation(shiftedOnAxis); // return GetNeighbourIndexIn(fromIndex, fromTriIndex, cube.CubeIndex, out result); //} public static int RotateIndex(int triangulationIndex, MirrorAxis axis) { CubeRepresentation cube = new CubeRepresentation(triangulationIndex); cube.MirrorRepresentation(axis); return(cube.CubeIndex); }
public static int RotateCornerIndexOnAxis(int cornerIndex, MirrorAxis axis) { if (axis == MirrorAxis.X) { return(CubeRepresentation.RotateOnX(cornerIndex)); } else if (axis == MirrorAxis.Y) { return(CubeRepresentation.RotateOnY(cornerIndex)); } else { return(CubeRepresentation.RotateOnZ(cornerIndex)); } }