Questo è stato alla guida mi noci ...Forza il senso di rotazione del CALayer?
Considerando "piano" è una CALayer, ruoto che nell'asse X:
plane.transform = CATransform3DMakeRotation(180 * M_PI/180.0f, 1.0f, 0.0f, 0.0f);
e questo lo rende ruotare in senso orario, che è perfetto.
Ora, ad un certo punto nel tempo, lo voglio per tornare a 0 gradi, per cui uso:
plane.transform = CATransform3DMakeRotation(0 * M_PI/180.0f, 1.0f, 0.0f, 0.0f);
Il fatto è che ... lo fa in senso antiorario, il che non è quello che voglio :(
Sto supponendo che usi il percorso di rotazione più breve, ma anche se gli dico di andare a 360 gradi invece, quando è finito e gli dico di riavviare l'animazione, inizia da 360 per andare a 180, e va indietro invece della giusta direzione:
C'è un modo per aggirare questo?
Cosa farei in Actionscript sarebbe:
if (plane.rotationX == 360) plane.rotationX = 0;
e sarebbe riprendere bene, ma se lo faccio usando CATransform3DMakeRotation entrambe le trasformazioni si scontrano, a causa del l'animazione (penso) e si incasina.
Qualsiasi aiuto sarebbe molto apprezzato!
Grazie
vedo questo è un toughie :( – Andre