Abstract the next function, computeRowFromOffset(), out of the individual Movement classes.Still two issues:
1) mysterious 1.5 multiplier in Movement122) in Movement8, moving the offset works only if the rotAxis are face-turning, i.e. they connect the centers of the opposing faces of the octahedron.
Remove class referencees from ObjectList.
MOve the FOV from ObjectList to individual object classes.
Introduce abstract 4,6,8 adn 12 classes.
Move the Movement class from ObjectList to individual object classes.
Realize that the Movements of Rex, Redi, Dino and the Skewbs are all identical and convert those 4 classes into one MovementCornerTwisting.
Minor
Make computing the offset in the Movement class more correct. From now on, in the center of the face the offset if always 0 regardless of the axis.Before it would always assume that we can add DIST2D to the offset which is originated at the center of the face and this way get an offset which spans from 0 to height of the face. This is not always true - conterexample: half of the triangluar faces of an octahedron which are 'upside down'
Move actual solving the object to PreRender.
(before we had a 'solveObejct()' in preRender already, but that one just starts the Solve Effect!)
View revisions
Also available in: Atom