Node data is stored in node_data.json
. It contains fields:
-
"node_labels"
-- each node has a label[x, y, f]
wherex
andy
are coordinates local to the face numberf
. -
"node_positions"
-- each node has a position[x_c, y_c]
wherex_c
andy_c
are cartesian coordinates. This drawing kinda sucks right now. -
"axis0_move_cycles"
etc -- each axis as associated to 3 different "moves" that correspond to rotating a slice of the rubik's cube. These are represented[[u1, v1], [u2, v2], ..., [u12, v12]]
where applying a move in the forward direction goesu1 -> v1
,u2 -> v2
, etc. Rotating in the reverse direction goesv1 -> u1
,v2 -> u2
, etc. -
"axis0_atomic_cycles"
etc -- similar to the move cycles, we define 3 different "atomic cycles" per axis. Each is conceptually one third of a move cycle -- it can be used to make an animation for the move cycle of the same axis and index.