cubing / cubing.js

🛠 A library for displaying and working with twisty puzzles. Also currently home to the code for Twizzle.
https://js.cubing.net/cubing/
GNU General Public License v3.0
245 stars 44 forks source link

Simultaneous moves #34

Open jfly opened 12 years ago

jfly commented 12 years ago

Title pretty much says it all. Ideally this gets done in as twisty-independent a way as possible.

lgarron commented 10 years ago

Removing the wontfix.

Roofpig has this, but I don't like combining moves using +.

I'm currently thinking that it should be alright to detect of if all moves within a group (parentheses) can be animated at once. Then animate those together. Looks clean and natural, and not a hard problem for most twistypuzzles (i.e. for cubes, it just requires checking if all moves are on the same axis).

lgarron commented 3 years ago

We have a SimultaneousMoveIndexer since a while, but it only works with Cube3D and still needs to be combined with the (efficient, default) tree indexer.

Test using debug-simultaneous=true: https://experiments.cubing.net/cubing.js/alg.cubing.net/?alg=%28R+L%27%29+%2F%2F+Slice%0A%28F+B%29+%2F%2F+Anti-slice%0A%28y+U+D2+E2%27%29+%2F%2F+Lotsa+moves%0AR+L%27+%2F%2F+Not+grouped&debug-simultaneous=true Demo page with more advanced examples: https://experiments.cubing.net/cubing.js/twisty/simultaneous.html