|  Links
|  Virtual Rubik's Solver
|
|
|
|
Introduction
Virtual Rubik's Solver is a 3D simulation of the famous puzzle Rubik's Cube.
There is a common perception that Rubik's Cube is so hard to solve that most people would give it up just after a
few attempts. This software shows you how easily it can be solved. The simplest method (for beginners of course)
only requires three sequences
which are very easy to remember. Once you get acquainted with this method, it will probably last in your memory
forever. It works for me anyway. I am pretty sure that you can do the cube. If you are looking for a bigger challenge,
then you can try to beat the clock. You can also try to
solve Rubik's 4x4x4, 5x5x5, 6x6x6 or even 7x7x7. 7x7x7 will not be available on the market in the near future, but
you can play it now with the Rubik's Solver. This software indeed shows you how to solve Rubik's Cube of any degree. Once you
understand this algorithm, no cubes can challenge you, and you will likely shift your interest to
searching algorithms with shorter moves and executing the algorithms in the shortest time,
which is the most fun part of playing Rubik's Cubes.
To view the applet, your browser must support JRE1.4 (Java Runtime Environment) or higher. You can
download J2SE JRE from Sun.
After the download, you need to install JRE on your system by following the installation instruction.
Main features of Virtual Rubik's Solver:
- Cube degrees range from 2x2x2 to 7x7x7.
- A twist can be triggered by a mouse click or a mouse drag, you can play the cube and learn how to solve the cube
without having a real cube in your hands.
- The cube can be viewed from any angle by dragging the mouse even when a twist is in action, it is a true 3D animation.
- Two algorithms for 3x3x3 are embedded, one for 2x2x2 to 7x7x7. All methods are easy to understand. The algorithm for
2x2x2 to 7x7x7 actually works for cubes of any degree, and the parity problem will not arise.
- 7 navigation buttons are provided which allow a user to navigate the solution sequence back and forth. A track counter
will display the number of the current move and the length of the solution sequence.
- Targeted cube will be marked with an "x", never lose track or focus.
- Face labels can be turned on or off, never lose reference to face directions.
- You can hide the cubes that are irrelevant to the current step and only show all cubes that are fixed or currently
targeted, which allow you to pay more attention on targeted cubes.
- A step indicator shows which step it is up to in an animated solution.
- Face colors are configurable, you can paint the virtual cube to match the colors on your cube (2x2x2 to 7x7x7),
the solver will show you how to unscramble your cube step by step. Never worry if your cube got scrambled.
- A sequence executor allows you to enter your sequence and get it executed, very handy when practicing
a formula from other people or inventing your own formula.
- The solver also provides functions such as scrambling the cube using randomly generated sequence, restoring
the cube to solved position instantly, adjusting cube size and adjusting rotation speed.
How to play Virtual Rubik's Solver
A move or twist can be triggered by a mouse click or a mouse drag. Specifically
- clicking a center or a corner with the LEFT mouse button will trigger an ANTI-CLOCKWISE quarter turn of the face being clicked.
- clicking a center or a corner with the RIGHT mouse button will trigger a CLOCKWISE quarter turn of the face being clicked.
- clicking an edge cube with the LEFT mouse button will trigger a quarter turn of a middle layer / slice (thinking of the click as a PUSH action).
- clicking an edge cube with the RIGHT mouse button will trigger a quarter turn of a middle layer / slice (thinking of the click as a PULL action).
- dragging a non-center cube to its adjacent cubes will also trigger a quarter turn along the dragging direction only if
the mouse moves on the same face.
The cube can be viewed from different angles by rotating the whole cube. To rotate the whole cube,
just drag the mouse on any center cube or drag the mouse on the background area (the area that is
not covered by the cube).
- To change the degree of the cube, click "Degrees" and select one of the submenus (2x2x2 to 7x7x7).
- To change the solving method, click "Methods" and select one of the submenus ("Beginner 3x3", "Jeff's Method 3x3", "Ultimate Method NxN").
Some useful buttons under Configure:
- Color Scheme -- select color configuration from "Classic" or "East Sheen"
- Cube Size -- adjust the cube size
- Face Label -- turn the face label on or off
- Rotating Speed -- adjust rotating speed
- Hide/Show -- hide or show cubes that are irrelevant to the current step. It is only effective when an animated solution
is being reviewed. When "hide" is active, only cubes that are fixed or targeted will be shown, cubes that are irrelevant to the current
step and hence will be dealt with in a later step are hidden (shown with gray color).
Some useful buttons under Tools:
- Play -- play the cube by clicking or dragging the mouse
- Paint -- paint the cube with colors to match the colors on your cube, left click one of the six color
buttons to select a color, right click to open the color chooser where you can adjust center color. Click a piece (color square) on
the cubes to paint that piece with currently selected color, which is shown at the left bottom
corner on the cube panel. It is recommended to turn the face label on while in painting model. To exit
the painting model, select "Play", "Scramble", "Restore" or "Solve" under "Tools".
- Scramble -- scramble the cube using randomly generated sequences
- Restore -- restore the cube to its solved position (each face has a solid color).
- Solve -- solve the cube using selected method, animated solution can then be viewed with the
navigation buttons, targeted cubes will be marked with an "X".
To execute a sequence, first type in your sequence in the text field below the cube panel, then
press the "Enter" key. The sequence entered must conform the convention stated below.
Terminology
In Virtual Rubik's Solver each face has been labled with a letter ("F", "B", "L", "R", "U", "D"). Traditionally, a turn / twist is represented
by one of the six letters and the quotation mark. Specifically,
- F -- a clockwise quarter turn of the Front face / layer
- B -- a clockwise quarter turn of the Back face / layer
- L -- a clockwise quarter turn of the Left face / layer
- R -- a clockwise quarter turn of the Right face / layer
- U -- a clockwise quarter turn of the Up (top) face / layer
- D -- a clockwise quarter turn of the Down (bottom) face / layer
- ' -- an anti-clockwise quarter turn
- '' -- an anti-clockwise half turn (two single quotes not a single double quote)
- f -- a clockwise quarter turn of the second layer from front
- b -- a clockwise quarter turn of the second layer from back
- l -- a clockwise quarter turn of the second layer from left
- r -- a clockwise quarter turn of the second layer from right
- u -- a clockwise quarter turn of the second layer from up
- d -- a clockwise quarter turn of the second layer from down
The general format for a twist of a single slice (layer) is : nVq, where
        n is the number of the slice (1, 2, 3, 4, ...)
        V is one of the faces (F, B, L, R, U, D)
        q is the number of quarter turns (1, 2, -1, -2, blank = 1, ' = -1, '' = -2),
which represents that the n-th layer from face V is twisted by q times quarter turns.
For example, 2F' means an anti-clockwise quarter turn of the second layer from the Front face.
The general format for a twist of multiple slices in consecutive order is:
(sV-eV)q, where
        s is the number of the starting slice
        e is the number of the ending slice
        V is one of the faces (F, B, L, R, U, D)
        q is the number of quarter turns (1, 2, -1, -2, blank = 1, ' = -1, '' = -2),
which represents that the s-th layer to the e-th layer from face V is twisted
by q times quarter turns.
For example, (2L-4L)-1 means an anti-clockwise quarter turn of the 2nd layer to the 4th layer from
the Left face.
A sequence is a sequence of twists separated by spaces. For example,
2R L' 2U'' (2F-4F)2 is a valid sequence, which means
        a clockwise quarter turn of the 2nd layer from Right, followed by
        an anti-clockwise quarter turn of the Left face, followed by
        an anti-clockwise half turn of the 2nd layer from Up, followed by
        a clockwise half turn of the 2nd layer to the 4th layer from the Front face.
Links:
Chris Hardwick's Rubik's Cube Page
Jaap's Puzzle page
Jessica Fridrich's speed cubing page
David Byrden's Twisty Puzzles
Michael Reid's Rubik's cube page
Rubik's Official Online Site
Speedcubing.com
Contact
Virtual Rubik's Solver, Rubik's Sequence Builder and Rubik's Sequence Viewer were developed by Jiuzhao Hua.
All rights reserved. These software are protected by International Copyright Laws. Queries should be directed
to hua_jz(a)hotmail.com.
More Puzzles
Last updated on 31 August 2007.