vorrei mettere al posto del puntatore una freccia che dia la direzione che si sta seguendo tipo una bussola qualcuno mi sa aiutare bisognerebbe usare qualche formula tipo radianti a seconda dello spostamento
vorrei mettere al posto del puntatore una freccia che dia la direzione che si sta seguendo tipo una bussola qualcuno mi sa aiutare bisognerebbe usare qualche formula tipo radianti a seconda dello spostamento
L'oggetto Math !![]()
c = Math.atan2(x, y);
con questo trovi:
computes and returns the arc tangent of y/x in radians. The return value represents the angle opposite the opposite angle of a right triangle, where x is the adjacent side length and y is the opposite side length.
Con questo lo trasformi in gradi:
d = (180*Math.atan2(x, y))/Math.PI;
E con questo trovi l'arco di tangente prendendo com x e y le coordinate del mouse rispetto all'origine (reg point) dello stage:
this.onEnterFrame = function() {
x = _root._xmouse;
y = _root._ymouse;
c = Math.atan2(x, y);
d = (180*Math.atan2(x, y))/Math.PI;
trace(c);
trace(d);
};
Ciao,
.:| bandafox |:.
quindi d = al numero in gradi della rotazione
e questi valori vengono continuamente aggiornati???
Inserisci questo codice nel primo frame di un movie vuoto, e vedi cosa ti restituisce il trace![]()
this.onEnterFrame = function() {
x = _root._xmouse;
y = _root._ymouse;
c = Math.atan2(x, y);
d = (180*Math.atan2(x, y))/Math.PI;
trace(c);
trace(d);
};
Poi in base al valore ruoti un mc che ti farà da "bussola" ..
Ciao,
.:| bandafox |:.
io ho provato a mettere il valore di d in un campo di testo e non sono proprio i gradi della posizione del puntatore del mouse poi come faccio a dare al movie clip questo valore, va bene
onClipEvent (enterFrame)
_root.mymovie._rotation = d;
questa d si aggiorna da sola o devo aggiungere qualcosa ???=
grazie mille per l ' aiuto
l mc così non mi prende la direzione del puntatore del mouse come rotazione
Una funzione MOLTO grossolana, per però può darti un'idea di come fare a realizzare la rotazione del puntatore ...
Sulla root:
movimentoMouse = new Object();
movimentoMouse.onMouseMove = function() {
x = _root._xmouse-coox;
y = _root._ymouse-cooy;
d = (180*Math.atan2(x, y))/Math.PI;
punt._x = _root._xmouse;
punt._y = _root._ymouse;
punt._rotation = -d;
trace(coox);
trace(cooy);
trace(x);
trace(y);
trace(d);
};
function newcoo(diff) {
if ((coox>_root._xmouse+diff || coox<_root._xmouse-diff) && (cooy>_root._ymouse+diff || cooy<_root._ymouse-diff)) {
coox = _root._xmouse;
cooy = _root._ymouse;
}
}
Mouse.hide();
setInterval(newcoo, 10, 10);
Mouse.addListener(movimentoMouse);
coox = 0;
cooy = 0;
stop();
Sulla root devi avere un mc istanziato "punt" contentente il tuo puntatore.Ripeto, è fatta in fretta e molto "grezza", ma dovrebbe comunque dare un'idea ...
Ciao !
.:| bandafox |:.
grazie mille dell aiuto continuo a lavoraci sopra e ti faccio sapere
ma quale grezza sei un grande funziona benissimo
grazie e complimenti quando ho perfezionato tutto posto il movie nell apposita sezione con il tuo permesso naturalmente