Ciao a tutti,
premetto che sono alle prime armi con actionscript...
mi sto' divertendo ad usare la libreria Sandy per le animazioni 3D in Flash/actionscript.
il codice riportato qui sotto funziona benissimo ... ma appena inserisco la parte commentata che inizia dalla riga //INTERPOLAZIONE, il compilatore mi da il seguente errore ...
translation = new PositionInterpolator( easing.create(),100, new Vector(-100,0,0), new Vector(100,0,0));
tipo non corrispondente ...
c'è qualcuno che mi puo' aiutare a capire dove sbaglio ???
grazie e ciao !
Andrea
import sandy.core.data.*;
import sandy.core.group.*;
import sandy.primitive.*;
import sandy.view.*;
import sandy.core.*;
import sandy.skin.*;
import sandy.util.*;
import sandy.core.transform.*;
import sandy.events.*;
function init( Void ):Void
{
var screen:ClipScreen = new ClipScreen( this.createEmptyMovieClip('screen', 1), 500, 300 );
var cam:Camera3D = new Camera3D( 700, screen);
cam.setPosition(100, 50, -300);
cam.lookAt(0,0,0);
World3D.getInstance().addCamera( cam );
var bg:Group = new Group();
World3D.getInstance().setRootGroup( bg );
createScene( bg );
World3D.getInstance().render();
}
function createScene( bg:Group ):Void {
function createCoordinateSystem( bg:Group, doPlanes:Boolean, grid:Number ):Void {
var xAxis:Object3D = new Line3D( new Vector(-150,0,0), new Vector(150,0,0) );
var yAxis:Object3D = new Line3D( new Vector(0,-150,0), new Vector(0,150,0) );
var zAxis:Object3D = new Line3D( new Vector(0,0,-150), new Vector(0,0,150) );
xAxis.setSkin( new SimpleLineSkin( 1, 0xff0000, 60 ) ); // rosso
yAxis.setSkin( new SimpleLineSkin( 1, 0x00ff00, 60 ) ); // verde
zAxis.setSkin( new SimpleLineSkin( 1, 0x0000ff, 60 ) ); // blu
var axes:Group = new Group();
axes.addChild(xAxis);
axes.addChild(yAxis);
axes.addChild(zAxis);
bg.addChild( axes );
if( doPlanes){
var xyPlane:Object3D = new Plane3D(100,100,grid,'quad');
xyPlane.setSkin( new MixedSkin(0x00FF00, 10, 0, 15, 1));
var yzPlane:Object3D = new Plane3D(100,100,grid,'quad');
yzPlane.setSkin( new MixedSkin(0x0000FF, 10, 0, 15, 1));
var zxPlane:Object3D = new Plane3D(100,100,grid,'quad');
zxPlane.setSkin( new MixedSkin(0xFF0000, 10, 0, 15, 1));
var tg1:TransformGroup = new TransformGroup();
var rot1:Transform3D = new Transform3D();
rot1.rot(90,0,0);
tg1.setTransform( rot1 );
tg1.addChild( xyPlane );
var tg2:TransformGroup = new TransformGroup();
var rot2:Transform3D = new Transform3D();
rot2.rot(0,0,90);
tg2.setTransform( rot2 );
tg2.addChild( yzPlane );
bg.addChild( tg1 );
bg.addChild( tg2 );
bg.addChild( zxPlane );
}
}
createCoordinateSystem( bg, true, 1 );
//CUBO
var cube:Object3D = new Box( 50, 50, 50, 'quad' );
var skin:Skin = new MixedSkin( 0x00FF00, 40, 1, 100, 1 );
cube.setSkin( skin );
bg.addChild( cube );
// INTERPOLAZIONE
/*
function doMove(){
translation.redo()
}
var tTrans:TransformGroup = new TransformGroup();
var easing = new Ease();
translation = new PositionInterpolator( easing.create(),100, new Vector(-100,0,0), new Vector(100,0,0));
tTrans.setTransform( translation );
tTrans.addChild( cube );
bg.addChild( tTrans );
*/
}
// We lauch the animation creation.
init();