Sto cercando di creare una gallery con delle foto che posso spostare a mio piacimento e ruotarle nel caso si clicchi sulla cornice.
Ma quando mando in esecuzione l'swf, nel momento in cui dovrebbe partire la procedura di rotazione, questo è il messaggio d'errore che mi viene riportato:
TypeError: Error #1034: Assegnazione di tipo forzata non riuscita: impossibile convertire flash.events::Event@3b3c2e99 in flash.events.MouseEvent.
Ho come la sensazione che sbaglio a passare l'evento alla funzione... che ne dite?
http://www.mediafire.com/download.php?yr5f9t8ma50xb0n
Preciso che la funzione di rotazione al momento è attiva unicamente sul lato sinistro della cornice
var distanzaX:Number;
var distanzaY:Number;
var radianti:Number;
var sup:Number;
var sup2:Number;
stage.addEventListener(MouseEvent.MOUSE_DOWN, drag)
function drag(event:MouseEvent): void
{
distanzaX=mouseX-event.target.x;
distanzaY=mouseY-event.target.y;
if (distanzaX < -68)
{
radianti=Math.atan2(distanzaY,distanzaX);
sup=(radianti/Math.PI)*180;
sup2=event.target.rotation;
event.target.addEventListener(Event.ENTER_FRAME, ruota)
}
else
{event.target.startDrag()}
}
stage.addEventListener(MouseEvent.MOUSE_UP, stopdrag)
function stopdrag(event:MouseEvent): void
{event.target.stopDrag()}
function ruota(event:MouseEvent):void
{
distanzaX=mouseX-event.target.x;
distanzaY=mouseY-event.target.y;
radianti=Math.atan2(distanzaY,distanzaX);
event.target.rotation=(radianti/Math.PI)*180-sup+sup2;
}

Rispondi quotando