giovedì 27 gennaio 2011

Senocular Transformation Tool

Se c'è un tool di cui non posso proprio fare a meno nel mio lavoro è il pacchetto di classi di Tween di greensock, il Tweenmax con tutta la sua famiglia.
Diciamolo, non solo è comodissima e zeppa di features, ma ha anche un'ottima curva di apprendimento con una logica davvero semplice e funziona davvero bene. La pagina di esempio è di una chiarezza disarmante, chiunque può in breve tempo capirne il funzionamento e le potenzialità.
(Tra parentesi, Jack Doyle, alias "mr green sock", nasce come autodidatta - pensare che sia riuscito a fare tanto la dice lunga).

Esiste però la possibilità di espandere ulteriormente le sue funzioni, ovvero entrando, pagando, a far parte del greensock club. Per quanto suoni (personalmente) come una promozione anni 90, in realtà offre un sacco di vantaggi e aiuti nello sviluppo.
Alcuni esempi: la classe LiquidStage per gestire il ridimensionamento del browser con swf fullscreen, splitTextField per la gestione di effetti su campi di testo e il trasformManagerAS3 per comode trasformazioni come rotazioni, scala e stiramento di oggetti.
Non parlo solo per citazione, in ufficio hanno scelto di fare l'acquisto e, permettetemi di dire, questo fa onore ai miei capoccia. :)

Cmq, tornando al TweenMax c'è un sacco di roba davvero utile. In questi giorni sto programmando una pagina per creare mini strisce a fumetti per una nuova serie. Una delle feature da implementare è troprio la trasformazione degli oggetti che ho risolto con il tweenmax base.
Oggi, però, il mio collega mi ha girato una classe nuova dal sito di senocular, alias Trevor McCauley. É ancora in via di sviluppo, ma completamente free per fare proprio trasformazioni su oggetti .
La semplicità è estrema: si crea un proprio oggetto, diciamo uno Sprite, poi si istanzia il TransformTool passando come target il nostro Sprite. Fine.
Per capirci:

  1. var quadrato:Sprite = new Sprite();

  2. addChild(quadrato);

  3. quadrato.graphics.beginFill(0xAACCDD);

  4. quadrato.graphics.drawRect(-50, -50, 100, 100);

  5. quadrato.x = 100;

  6. quadrato.y = 100;

  7. //

  8. var tool:TransformTool = new TransformTool();

  9. addChild(tool);

  10. tool.target = quadrato;

  11. // per evitare lo skew

  12. tool.skewEnabled = false;

  13. // se non si vuol far ruotare oggetto

  14. tool.rotationEnabled = false;


Ovviamente è tutto costumizzabile, in particolare anche le ancore di controllo che nell'esempio rimangono sempre visibili essendo l'oggetto da trasformare sempre e solo uno .
Nella pagina di senocular ci sono molti dettagli e un bell'esempio che consiglio caldamente di provare.

Se qualcuno vuole vedere un mio esempio on-the-fly, ho messo online uno zip con un test su 4 oggetti distinti. Lo trovate qui, ovviamente dovete avere anche le classi di senocular per compilarlo che NON sono comprese nel pacco.
L'swf direttamente lo potete provare qui.

Nessun commento:

Posta un commento