better minimalCubiesInRow in case of cuboids - take into account that the shapeshifters can be hollow inside if x>=3, y>=3, z>=3 (e.g. 3x3x5)
New verifier mechanism finished and being used by both KILO3 and CUBE3 algorithmic solvers.
Progress with automatic verifiers.Appears to work now in case of KILO_3 and CUBE_3.In case of IVY_2, it crashes.
beginnings of ther Kilominx verifier
comment
fix for scrambling shape-shifting cuboids. Before when scrambling e.g. the CU_242, we would sometimes 'hit air' (try to rotate a layer which does not have any cubits in it)
progress with Algorithmic solvers. Seem to solve all right now; but still problems with which cubits it lights.
fixes for Algorithmic solvers (but those still do not work correctly!)
Integration of the Algorithmic solver 'SolverAlgorithmicCUBE3' with the app pretty much done.
Properly define and separate the interface between the App and the 'solver' part of the objectlib. Move the 'position verifiers' to the objectlib.
Restructuring for the solvers in the app.
Glow cubits involved in the phase.
minor
push objectRatio up from TwistyObjectControllable to the last layer.
Carve out the fifth layer: touch control.
Carve out the fourth layer: stickers.
Carve out the third layer from the Puzzle implementation: TwistyPuzzleSolved, i.e. detection of the solved state.
Next: the fourth layer: stickers.Then: fifth layer: touch control.Then: everything else. (metadata?)
API name changes; fix for Dino4's solved state!
Minor
remove numLayers from parameter list of 3 next methods.
remove numLayers from 4 API methods.
Clean up TwistyObjectWithMesh's API (remove getDist3D() and getSize() )
Make calculation of circumscribed radius work for any current and future object.
Cleanup
bugfix (move iconode to TwistyObjectWithMesh as mesh creation sometimes depends on the mode)
port fixes from master
Carve out another, 2nd layer from TwistyObject: everything related to creating its Mesh.
Better structure things architecturally.
bugfix
Finally! Split TwistyObject into:
- lower class 'TwistyObjectTheoretical' (an object that has no mesh, no stickers, cannot be touch-controlled, but knows how a real object of its kind moves - so can be used e.g. in solvers)
- everything else above it.
In the future, the 'everything else' will be further slipt into...
improve the way Crazy Puzzles are done: JSON files
improve the way Crazy Puzzles are done (this does not depend on mShapes anymore)
First stage of the planned split of the giant TwistyObject class into (at first!) two: TwistyObjectTheoretical (a 'theoretical' object which moves just like the real one, but which has no mesh, stickers, shapes, node and cannot be controlled) and everything else.
remove debugging
Phased Solver app: debugging
progress with phased solver.
Come back to the old, 3-way solved state detection.
unify solved state detection. Doesn't work yet!
one fix for the attempt to cover all objects under one 'isSolved2' method.
debugging the new 'surfaces' thing.
Further abstractions in the 'detect solved state' engine.
It should now be able to work in all cases - but it is still buggy (Dino4 does not work now!)
TwistyObjectSolved:
1) separate the 3 methods2) abstract away the 'TwistyObjectSurface' from method2 - in anticipation for making the surface be able to accept curved surfaces (and support the likes of Masterball and the Penroses)
Fix solved state of the 4x4 Penrose Cube.
Beginnings of algorithmic solvers.
Bugfix for CATEGORY_SHAPE_OTH
Fix for the solved state detection of the Penr3 and Penr4.
Full fix for the problem that people already have old, locally-created JSON files of bandaged stuff with and in those JSONs category is equal to 0.
We no longer distinglish between the different shapes on the basis of number of puzzle walls as there are now the Octahedron and the Barrel both with 8. Now we do it properly, on the basis of the 'shape' part of object's category.
Rubik Cheese
Lint
beginnings of support for barrel-shaped objects.
If an object is re-stickered so that there are less colors on its faces than originally, block submitting records.
New TwistyObject API to only restore the stickers, and not the object positions.
Beginnings of color unification
Fix the detection of the solved state.
Restore the colors and sticker properties from Preferences.
Save the colors and sticker properties to Preferences.
two bugfixes for configurable stickers
progress with configurable stickers
More support for configuring the stickers.
beginning of the fix for the shapeshifting cuboids.
New json files.
Support for the new default detection of solved state done. Something seems to be working.
Beginnings of support for automatic solved state which supports faces of the same color.
new detection of the solved state - beginnings.
Penrose Cube: jsons, mesh, icon, finishing touches.
Progress with Penrose - debugging solved state.
(limited) support for different strokes across each edge of each sticker.
progress with new sorting methods.
Move signatures and ObjectConstants to Metadata.
Next step toward separating TwistyObject metadata.
Big step toward separating TwistyObject metadata.
change complexity from int to float.
Beginnings of support for flat shapeshifting cuboids and for not-rotatable rows in TouchControlChanging [this last thing still does not work correctly]
Shape-shifting cuboids: icons (incorrect), jsons, meshes.
Support for shape-shifting cuboids. (except for the flat ones like the Super Floppy)
progress with Ghost rotations.
separate a new class out of TwistyObject: TwistyLayerRotations
clean up TwistyObject's API