Salve ragazzi!
Premetto che ci sono stato su 2 ore su questo problema prima di scrivere qui.
In un flash (nn penso centri ma è x AIR) vorrei inserire un piano cartesiano (quello con gli assi x e y..). Diversamente da flash la Y va verso l'alto e non verso il basso.
Per farlo ho disegnato uno Sprite Maschera e l'ho applicato allo Sprite D che contiene gli assi (AsseX e AsseY) e lo sprite Griglia, che appunto è una griglia (disegnata grande quanto la maschera).
Con gli eventi del mouse ho applicato il drag e con questo codice ho fatto in modo che la griglia e gli assi si vedessero sempre, anche se mi sposto di molto
Fin qui tutto ok. Poi ho aggiunto i pulsanti Zoom+ e Zoom-, che agiscono su D.scaleX e D.scaleY (D contiene gli assi e la griglia). Se aumento lo zoom e mi sposto orizzontalmente dopo un po comincio a vedere la fine della griglia e degli assi... perché?? Lo so che è difficile spiegare, quindi allego il file completo così potete osservare di personaCodice PHP://########## ENTER FRAME
function FEnterFrame(Evt:Event){
//### ASSI
AsseX.x = -D.x;
AsseY.y = -D.y;
//### SE SONO NEGATIVI NASCONDO LA FRECCINA
if(D.x > 634) AsseX.x += 20;
if(D.y < 10) AsseY.y -= 20;
//### GRIGLIA ORIZZONTALE
while(Griglia.x>-D.x){
Griglia.x -= 50;
}
while(Griglia.x<-D.x){
Griglia.x += 50;
}
//### GRIGLIA VERTICALE
while(Griglia.y>-D.y){
Griglia.y -= 50;
}
while(Griglia.y<-D.y){
Griglia.y += 50;
}
}
La griglia ha buchi di 50x50
scaleX e scaleY non possono essere < 0.6
Vorrei sapere come fare per levare questo bug...
E poi ho visto che esiste MouseEvent.MOUSE_WHEEL, ma come faccio a sapere se la rotellina ha girato in su o in giu (x metterlo sullo zoom)?
GRAZIE MILLE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!

Rispondi quotando