Introduce RubikPatternsList. Now, if one wants to contribute patterns for a new object, all one has to be is give the list of strings describing the patterns and add them to the List.
Speed up displaying the Patterns Dialog - do not read the whole thing, but only one Category at a time as required.
Minor.
Pretty Patterns: slight speedup.
Pretty Patterns: some patterns had 'empty' moves (i.e. angle 0). Correct the last 5 such patterns.
Pretty Patterns: some patterns had 'empty' moves (i.e. angle 0). Correct the next 6 such patterns.
Pretty Patterns: some patterns had 'empty' moves (i.e. angle 0). Protect the parser against such sequences and correct the first 12 such patterns.
Pretty Patterns Dialog: remember the positions of scrollbars.
Bugfixes for Pretty Patterns
Bugfixes - do more stuff 'post render'
Major progress with Prretty Patterns.
Two things remain:
1) looks like sometimes making/backing Moves in a Pattern gets stuck. ( Pattern.mCanRotate! )2) we need to add RubikPatternList!
Major progress with Prretty Patterns - hopefully only initializing the Object remains!
extend the RubikObject API to make it possible to add rotations of multiple rows simultaneously (all along the same axis of course!)
More support for actual patterns!
Beginnings of support for actual patterns!
Remember state of the dialog.
Improve the upper_text.
Improve the 'About' dialog.
Prettier spinner.
Improve the Pattern data: unique names, more even splitting into categories.
Progress with Pretty Patterns.
Re-add the Pattern dialog, but attach it to the Pattern uistate this time.The idea to do away with the dialog proves impossible - we'd have to resize the top bar, which causes very unpleasant flashes.
Minor
Progress with Pretty Patterns - do away with the tabbed dialog!
Beginnings of the 3x3x3 Solver and Pretty Patterns.
Bugfixes.
Change the series of Object buttons in the Play state into a PopupWindow.
The SetName Dialog should be finished.
More progress with the new Dialog, SetName.
Progresswith the new Dialog, SetName.
Implement a new Dialog, SetName.
Implement computeHash()
Bugfix for downloading High Scores.
progress with submitting one's high scores.
Beginnings of submitting one's high scores.
Adjust rotation speed depending on the row (important in case of Pyraminx - there the top little tetrahedron must rotate much faster than the bottom big layer )
Add the 'New Record' dialog.
Add the 'Solved' dialog.
Progress with getting/setting Country and DeviceID.
Port the downloading into the new 'magic' server.
Incorporate myRecords into the Scores dialog.
Progress with saving number of runs, plays, name, verified status.
Still a fix for the previous fix - cubits lie on faces only if their RotationRow is very close to 0 or mSize-1, and not when their RotationRow rounded to the nearest integer is 0 or mSize-1 ! ( counterexample: the rotated tetrahedrons of Pyraminx )
Fix the way we detect if an Object is solved.Previous way would not detect situations when the object looks solved, but one of the cubits inside its faces - a non-corner and non-edge - is rotated and ends up on the same face.
Separate scores from StateSolving
Before scrambling, mark situation as 'not solved'
Make the records independent of arrangement of Objects and their sizes in RubikObjectList.
Major restructuring around making it possible to include different kinds of RubikObjects in the UI.
1. library: new API DistortedNode.setProjection()2. cube: adjustments for Pyraminx.
Movement finished!
Progress with object Movement - almost finished.
Progress with object Movement.
Progress with object Movement. Assigning new Rotations works now, independently of object type.
Progress with object Movement. Looks like detecting which face got touched and where (in 2D in-face surface coordinates) does work now.
Improve the way we handle the cube.Before if we touched the screen during any of the transitions, this touch and resulting draw would result in no action (confusing).Now it seamlessly becomes a drag (even if we, during a transition, touched inside the cube)
Big progress with generalizing the Movement classes.
Improve RubikCubeMovement
Fix the memory test - we need to run one thing on the Graphics thread!
Fixes for the Projection matrix, FOV.
There was a confusion between the Projection of the Node onto the Screen, and the Projection of the Cubits on the Node.
Some fixes for the Pyraminx.
The Pyraminx itself finished - now its movements!
Progress with Pyraminx.
Some progress with Pyraminx.
Icons, details.
Progress with MeshJoin app.Fix rotating in some apps.
Progress with the Pyraminx - computing all legal quaternions!
Progress with of Pyraminx.Bugfix for joining a single Mesh!
Beginnings of Pyraminx.
bugfix
Progress towards generalizing belongsToRotation()
Make RubikCube more abstract.
Correct the Rubik app for the recent changes to the library's Node.
Correct the RubikCube app for the last library changes in Node.
Convert RubikCube to the new V&F center schema!
Move the Effects.setStretch to Meshbase.setStretch
Move the 'pre-multiply mesh before applying any effects' thing from [(Xsize of texture, Ysize of texture) x Mesh's zFactor] to Effects.setStretch(sx,sy,sz)
More work on making new types of RubikObjects easily creatable.
More work on Cubit.
Separate RubikCubit inner class.