Comment créer un mouvement en spirale? - Forums de discussion

Navigation

Accueil du forum » Flash » Comment créer un mouvement en spirale?


Le sujet

krefftComment créer un mouvement en spirale?
Par krefft, le Mardi 10/10/2006 à 17h32'43
1 message
Bonjourà tous!
Je crée un site dans lequel je souhaiterai faire apparaitre des petites spheres les unes à la suite des autres. Elles partiraient du centre de l'écran puis grandiraient en tournant le long d'une spirale et finiraient, avec leur taille définitive , en arc de cerle.
Ainsi, une fois en place je voudrais qu'elles deviennent les boutons d'un menu.
Voici un exemple du mouvement :http://mxprototypes.free.fr/spirale.php3.
Cependant je n'arrive pas à le faire marcher et je ne veux pas qu'elles soient dépendantes du curseur.
Je voudrais qu'elles se suivent sur la même trajectoire en spirale mais qu'elles se séparent à la fin pour trouver chacune leur place.
L'explication est longue mais l'animation est simple.
Seulement je suis limité en flash et je bute dessus depuis une semaine.
Si vous avez des idées, merci d'avance.

________________
krefft

Les réponses

dollarPar dollar, le Samedi 04/11/2006 à 00h16'05
22 messages
Teste sa, mais incompatible avec firefox il me semble... et c'est du HTML
Pense à mettre l'image nommée f1.gif dans le meme dossier


<SCRIPT LANGUAGE="JavaScript">
<!--  abdelaziz_info@yahoo.fr
var mes_roses='f1.gif" width="42" height="53" height="35';//Put your image name here!!
var amount=7;
var cnter=70;
var step;
var currStep = 0;
var Xpos = 0;
var Ypos = 0;
if (document.all)
{
document.write('<div id="ieDiv" style="position:absolute;top:0px;left:0px">')
document.write('<div id="c" style="position:relative">');
for (n=0; n < amount; n++)
document.write('<img src=" '+mes_roses+'" style="position:absolute;top:0px;left:0px">')
document.write('</div>')
document.write('</div>')
function abdelaziz_info(){
Xpos = document.body.scrollLeft+event.x-5;
Ypos = document.body.scrollTop+event.y-5;
}
document.onmousemove = abdelaziz_info;
}
else if (document.layers)
{
window.captureEvents(Event.MOUSEMOVE);
for (ns=0; ns < amount; ns++) 
document.write("<LAYER NAME='n"+ns+"' LEFT=0 TOP=0><IMG SRC='"+mes_roses+"'></LAYER>");
function Ainfo(evnt){
Xpos = evnt.pageX-5;
Ypos = evnt.pageY-5;
}
window.onMouseMove = Ainfo;
}
function roses(){
if (currStep<0.0550)
step=0.001;
if (document.all)
{
for (i=0;i<ieDiv.all.c.all.length;i++)
{
ieDiv.all.c.all<i>.style.top = Ypos+cnter*Math.cos((currStep+i*4.5)/5)*Math.sin((currStep)*150);
ieDiv.all.c.all[i].style.left = Xpos+cnter*Math.sin((currStep+i*4.5)/5)*Math.sin((currStep)*150);
}
}
else if (document.layers)
{
for ( i = 0 ; i < ns ; i++ )
{
var temp="n"+i
document.layers[temp].top = Ypos+cnter*Math.cos((currStep+i*4.5)/5)*Math.sin((currStep)*150);
document.layers[temp].left =Xpos+cnter*Math.sin((currStep+i*4.5)/5)*Math.sin((currStep)*150);
}
}
currStep += step;
setTimeout("roses()", 30);
if (currStep>0.0540)
{
step+=0.002;
if (document.layers)
{
for ( i = 0 ; i < ns ; i++ )
{
var temp="n"+i
document.layers[temp].top =Ypos+cnter*Math.cos((currStep+i*4.5)/5)
document.layers[temp].left=Xpos+cnter*Math.sin((currStep+i*4.5)/5)
}
}
else if (document.all)
{
for (i=0;i<ieDiv.all.c.all.length;i++)
{
ieDiv.all.c.all[i].style.top=Ypos+cnter*Math.cos((currStep+i*4.5)/5)
ieDiv.all.c.all[i].style.left=Xpos+cnter*Math.sin((currStep+i*4.5)/5)
}

}
if (step > 0.5)
{
step=0.5;
cnter-=8;
}
if (document.layers)
_y=-window.innerWidth;
else if (document.all)
_y=-document.body.clientWidth;
if (cnter <= _y)
{
currStep=0;
step=0.001;
cnter=70;
}
}
roses();
// -->
</SCRIPT>


[i][Message édité par dollar le 04/11/2006 à 00h18'59]

________________
dollar

dollarPar dollar, le Samedi 04/11/2006 à 00h17'33
22 messages
Désolé si c long.... pense aussi a placer une image nommée f1.gif dans le meme dossier que ces 2 pages HTML

<SCRIPT LANGUAGE="JavaScript">
<!--abdelziz_info@yahoo.fr
////votre image
var mon_image='f1.gif" width="42" height="53" height="35';var amount=8;
var cnter=70;
var step;
var currStep = 0;
var Xpos = 0;
var Ypos = 0;
if (document.all)
{
document.write('<div id="ieDiv" style="position:absolute;top:0px;left:0px">')
document.write('<div id="c" style="position:relative">');
for (n=0; n < amount; n++)
document.write('<img src=" '+mon_image+'" style="position:absolute;top:0px;left:0px">')
document.write('</div>')
document.write('</div>')
function iabdelaziz_nfo(){
Xpos = document.body.scrollLeft+event.x-15;
Ypos = document.body.scrollTop+event.y-15;
}
document.onmousemove = iabdelaziz_nfo;
}
else if (document.layers)
{
window.captureEvents(Event.MOUSEMOVE);
for (ns=0; ns < amount; ns++) 
document.write("<LAYER NAME='n"+ns+"' LEFT=0 TOP=0><IMG SRC='"+mon_image+"'></LAYER>");
function ntsfleurs(evnt){
Xpos = evnt.pageX-5;
Ypos = evnt.pageY-5;
}
window.onMouseMove = ntsfleurs;
}
function Zinfo(){
if (currStep<0.0550)
step=0.001;
if (document.all)
{
for (i=0;i<ieDiv.all.c.all.length;i++)
{
ieDiv.all.c.all[i].style.top = Ypos+cnter*Math.cos((currStep+i*2.5)/8)*Math.sin((currStep)*150);
ieDiv.all.c.all[i].style.left = Xpos+cnter*Math.sin((currStep+i*2.5)/8)*Math.sin((currStep)*150);
}
}
else if (document.layers)
{
for ( i = 0 ; i < ns ; i++ )
{
var temp="n"+i
document.layers[temp].top = Ypos+cnter*Math.cos((currStep+i*2.5)/8)*Math.sin((currStep)*150);
document.layers[temp].left =Xpos+cnter*Math.sin((currStep+i*2.5)/8)*Math.sin((currStep)*150);
}
}
currStep += step;
setTimeout("Zinfo()", 30);
if (currStep>0.0540)
{
step+=0.002;
if (document.layers)
{
for ( i = 0 ; i < ns ; i++ )
{
var temp="n"+i
document.layers[temp].top =Ypos+cnter*Math.cos((currStep+i*2.5)/8)
document.layers[temp].left=Xpos+cnter*Math.sin((currStep+i*2.5)/8)
}
}
else if (document.all)
{
for (i=0;i<ieDiv.all.c.all.length;i++)
{
ieDiv.all.c.all[i].style.top=Ypos+cnter*Math.cos((currStep+i*2.5)/8)
ieDiv.all.c.all[i].style.left=Xpos+cnter*Math.sin((currStep+i*2.5)/8)
}

}
if (step > 1.5)
{
step=1.5;
cnter-=8;
}
if (document.layers)
_y=-window.innerWidth;
else if (document.all)
_y=-document.body.clientWidth;
if (cnter <= _y)
{
currStep=0;
step=0.001;
cnter=70;
}
}
Zinfo();
// -->
</SCRIPT>

________________
dollar

Pages

Réponses les plus anciennes... 1 ...Réponses les plus récentes

A lire également

- Les conditions générales d'utilisation du site

Top-sites membres

Les Amis des Animaux | -1288 pointsDark Lord Center | -1897 pointsastuces blog et ciné live | -1908 pointsBlogHotel - Hébergement de Blog gratuit | -2257 points

Discussions récentes dans les forums

Membres
Pseudo:
Pass: Mémoriser ?
Problème d'identificationInscription gratuite
Tribune libre
CNIL: 1098091
Connectés: 4
Google:
Publicité: Vidéo humoristique de publicité télé.