/// <summary> /// Gets the correpondent face. /// </summary> /// <param name="color">The color of the face</param> /// <returns>Returns the face position.</returns> /// <exception cref="IndexOutOfRangeException"></exception> public CubeFace this[CubeFaceColor color] { get { foreach (KeyValuePair<CubeFace, CubeFaceType> entry in CubeMap) { if (entry.Key.Center.Equals(color)) return entry.Key; } throw new IndexOutOfRangeException(); } }
public static Color getColorByEnumValue(CubeFaceColor color) { switch (color) { case CubeFaceColor.B: return Color.Blue; case CubeFaceColor.G: return Color.Green; case CubeFaceColor.O: return Color.Orange; case CubeFaceColor.R: return Color.Red; case CubeFaceColor.W: return Color.White; case CubeFaceColor.Y: return Color.Yellow; } return Color.Blue; }
/// <summary> /// Returns the position of the color face in the cube (U, D, F, B, L, R). /// </summary> /// <param name="color">Color of the face to look for</param> public CubeFaceType GetFacePositionByColor(CubeFaceColor color) { foreach (VisualCubeFace face in _faces) { if (face.FaceColor.Equals(color)) return face.FaceType; } return CubeFaceType.U; }
public CubeFace(CubeFaceColor center) { Center = center; }
private void btnBuildDefaultCube_Click(object sender, EventArgs e) { Array facesArray = Enum.GetValues(typeof(CubeFaceType)); Array squaresArray = Enum.GetValues(typeof(CubeFaceletType)); CubeFaceColor[] colors = new CubeFaceColor[] { CubeFaceColor.R, CubeFaceColor.O, CubeFaceColor.B, CubeFaceColor.G, CubeFaceColor.W, CubeFaceColor.Y }; for (int i = 0; i < facesArray.Length; i++) { VisualCubeFace face = new VisualCubeFace(); face.FaceType = (CubeFaceType)facesArray.GetValue(i); foreach (CubeFaceletType item in squaresArray) { VisualCubeBlock block = new VisualCubeBlock(); block.Square = item; block.Color = colors[i]; face.AddBlock(block.Clone(), false); block.Dispose(); } this.CurrentCube.AddFace(face.Clone()); face.Dispose(); } picbCubeDiagram.Invalidate(); }
public RotateFaceMovement(CubeFaceColor color, CubeFaceType type) { Face = color; PositionFace = type; }