Accueil > > > PETITE ANIMATION GRAPHIQUE AUTOUR DU CURSEUR DANS UNE PICWIN
PETITE ANIMATION GRAPHIQUE AUTOUR DU CURSEUR DANS UNE PICWIN
Information sur la source
Description
Cette astuce vous montre comment faire suivre votre curseur par des cercles. Les cercles ont une couleur aleatoire et leur diametre grossis grace a une "boucle temporelle". Ce n'est pas d'une grande utilité, on va dire que c'est sympatique et presque amusant. Ceci dit ça peut toujours etre interessant.
Source
- ;idée et code original de Kerrigan, optimisation par Chang-FU
- alias cercle {
- ;$6 coordonnée y
- ;$5 coordonnée x
- ;$4 durée d'execution
- ;$3 epaisseur du cercle
- ;$2 taille maxi des cercles
- ;$1 nom de la fenetre
- ;timerfin stoppe la boucle temporelle a un temps en miliseconde donné
- ;timercercle permet de faire grossir les cercle je l'ai mis en -m 0 1 par comodité
- ;color(background) renvoi la couleur du fond
- $parse($1,$2,$3,$4,$5,$6)
- hadd cercle itr 1
- hadd cercle couleur $r(1,15)
- window -akp +b @ $+ $hget(cercle,¤1) -1 -1 200 200
- hadd cercle window @ $+ $hget(cercle,¤1)
- drawdot -n @ $+ $hget(cercle,¤1) $color(background) 300 100 100
- .timercercle -m 0 1 cercle_2 $hget(cercle,¤5) $hget(cercle,¤6)
- .timerfin -m 1 $hget(cercle,¤4) continue
- }
-
- alias -l cercle_2 {
- ;fonction qui trace les cercles
- ;en fait un cercle c un point blanc plus petit qu'un point de couleur plus gros,
- ;resultat on a un jolie cercle dont on peut definir l'epaiseur
- if ($hget(cercle,itr) > $hget(cercle,¤2)) {
- ;boucle qui reinitialise le processus
- drawdot -n @ $+ $hget(cercle,¤1) $color(background) $calc($hget(cercle,itr) + $hget(cercle,¤3)) $1 $2
- hadd cercle itr 1 | hadd cercle couleur $r(1,15)
- }
- drawdot -n @ $+ $hget(cercle,¤1) $hget(cercle,couleur) $calc($hget(cercle,itr) + $hget(cercle,¤3)) $1 $2
- drawdot -n @ $+ $hget(cercle,¤1) $color(background) $hget(cercle,itr) $1 $2
- drawline @ $+ $hget(cercle,¤1)
- hadd cercle itr $calc($hget(cercle,itr) +1)
- }
-
- alias -l parse {
- ;verifie les erreurs et s'il y en a renvoi alors une valeur par defaut
- ;utile uniquement au demarage mais pour ceux qui veulent
- ;develloper le code c bon a savoir
- if ($hget(cercle).size > 0) { hfree cercle }
- hmake cercle 10
- ;etablissement des valeurs par defaut
- hadd cercle ¤4 $iif($4,$4,30) | hadd cercle ¤3 $iif($3,$3,2)
- hadd cercle ¤2 $iif($2,$2,20) | hadd cercle ¤1 $iif($1,$1,Cercle)
- hadd cercle ¤5 $iif($5,$5,100) | hadd cercle ¤6 $iif($6,$6,100)
- }
-
- ;cet alias sert a faire les cercles autour du curseur a l'arret
- ;grace au valeurs par defaut que retourne le parseur les cercles sont mis au
- ;centre de la fenetre quand le cuseur n'est plus dans @cercle
- alias continue { .timercercle off | $cercle(cercle,40,1,250,$mouse.x,$mouse.y) }
-
- menu @cercle {
- ;evenement qui permettent de suivre la souris tout en traçant les cercles
- ;cercle est le nom de la fenetre
- ;40 la taille maximum du cercle
- ;1 est l'epaisseur du cercle
- ;150 temps en miliseconde qui indique la duré d'execution
- ;$mouse.x et $mouse.y renvoi la position de la souris
- mouse : {
- if ( !$timer(cercle) ) { $cercle(cercle,40,1,150,$mouse.x,$mouse.y) }
- }
- fermer Fenetre : { .timercercle off | .timerfin off | window -c $active }
- }
;idée et code original de Kerrigan, optimisation par Chang-FU
alias cercle {
;$6 coordonnée y
;$5 coordonnée x
;$4 durée d'execution
;$3 epaisseur du cercle
;$2 taille maxi des cercles
;$1 nom de la fenetre
;timerfin stoppe la boucle temporelle a un temps en miliseconde donné
;timercercle permet de faire grossir les cercle je l'ai mis en -m 0 1 par comodité
;color(background) renvoi la couleur du fond
$parse($1,$2,$3,$4,$5,$6)
hadd cercle itr 1
hadd cercle couleur $r(1,15)
window -akp +b @ $+ $hget(cercle,¤1) -1 -1 200 200
hadd cercle window @ $+ $hget(cercle,¤1)
drawdot -n @ $+ $hget(cercle,¤1) $color(background) 300 100 100
.timercercle -m 0 1 cercle_2 $hget(cercle,¤5) $hget(cercle,¤6)
.timerfin -m 1 $hget(cercle,¤4) continue
}
alias -l cercle_2 {
;fonction qui trace les cercles
;en fait un cercle c un point blanc plus petit qu'un point de couleur plus gros,
;resultat on a un jolie cercle dont on peut definir l'epaiseur
if ($hget(cercle,itr) > $hget(cercle,¤2)) {
;boucle qui reinitialise le processus
drawdot -n @ $+ $hget(cercle,¤1) $color(background) $calc($hget(cercle,itr) + $hget(cercle,¤3)) $1 $2
hadd cercle itr 1 | hadd cercle couleur $r(1,15)
}
drawdot -n @ $+ $hget(cercle,¤1) $hget(cercle,couleur) $calc($hget(cercle,itr) + $hget(cercle,¤3)) $1 $2
drawdot -n @ $+ $hget(cercle,¤1) $color(background) $hget(cercle,itr) $1 $2
drawline @ $+ $hget(cercle,¤1)
hadd cercle itr $calc($hget(cercle,itr) +1)
}
alias -l parse {
;verifie les erreurs et s'il y en a renvoi alors une valeur par defaut
;utile uniquement au demarage mais pour ceux qui veulent
;develloper le code c bon a savoir
if ($hget(cercle).size > 0) { hfree cercle }
hmake cercle 10
;etablissement des valeurs par defaut
hadd cercle ¤4 $iif($4,$4,30) | hadd cercle ¤3 $iif($3,$3,2)
hadd cercle ¤2 $iif($2,$2,20) | hadd cercle ¤1 $iif($1,$1,Cercle)
hadd cercle ¤5 $iif($5,$5,100) | hadd cercle ¤6 $iif($6,$6,100)
}
;cet alias sert a faire les cercles autour du curseur a l'arret
;grace au valeurs par defaut que retourne le parseur les cercles sont mis au
;centre de la fenetre quand le cuseur n'est plus dans @cercle
alias continue { .timercercle off | $cercle(cercle,40,1,250,$mouse.x,$mouse.y) }
menu @cercle {
;evenement qui permettent de suivre la souris tout en traçant les cercles
;cercle est le nom de la fenetre
;40 la taille maximum du cercle
;1 est l'epaisseur du cercle
;150 temps en miliseconde qui indique la duré d'execution
;$mouse.x et $mouse.y renvoi la position de la souris
mouse : {
if ( !$timer(cercle) ) { $cercle(cercle,40,1,150,$mouse.x,$mouse.y) }
}
fermer Fenetre : { .timercercle off | .timerfin off | window -c $active }
}
Conclusion
Copier tout dans vos remotes ensuite : Pour lancer la commande tapez /cercle et deplacez le curseur dans la fenetre
J'ai mis des commentaires histoire de ne pas etre perdu dans le code et pour que vous puissiez l'adapter sans difficulté a quelque chose de plus utile
l'astuce marche quelque soit la couleur du fond ... en jouant sur les parametre vous pouvez utiliser cette astuce comme un "focus" dans une picwin pour mettre des elements de la fenetre en evidence
si vous maitrisez le code vous pouvez toujours essayer de mettre du texte dans les cercles. Ca ne devrait pas etre trop difficil a mon avis.
J'espere que cette petite astuce vous plaira
Sources du même auteur
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
[MIX10] RELEASE CANDIDATE DE SILVERLIGHT 4 ET RIA SERVICES[MIX10] RELEASE CANDIDATE DE SILVERLIGHT 4 ET RIA SERVICES par Audrey
C'est enfin officiel, grâce au MIX 2010, les Release Candidate de Silverlight 4 et de RIA Services sont sorties ! Pour les télécharger, voici les liens : Silverlight 4 RC : http://silverlight.net/getstarted/silverlight-4/ RIA Services RC : http://www.micr...
Cliquez pour lire la suite de l'article par Audrey [WINDOWSPHONE7] LECTEUR DE FLUX RSS[WINDOWSPHONE7] LECTEUR DE FLUX RSS par Vko
Parce que j'aime pas tester à moitié, je me suis amusé à développer un petit lecteur de flux RSS avec un look qui vous rappellera surement quelque chose :) La RC de Visual Studio est plutôt molle mais fonctionne correctement. L'émulateur est pas...
Cliquez pour lire la suite de l'article par Vko [WP7] L'éMULATEUR WINDOWS PHONE 7 EST MULTITâCHE[WP7] L'éMULATEUR WINDOWS PHONE 7 EST MULTITâCHE par KooKiz
Une question qui reste en suspend concernant Windows Phone 7 est de savoir si le système permettra à plusieurs applications de s'exécuter simultanément, ou si un système de mise en pause similaire à celui de l'iPhone sera adopté. Même si cela ne perm...
Cliquez pour lire la suite de l'article par KooKiz PRéSENTATION CLUB MOSS CE JOUR "LA NOUVELLE ARCHITECTURE DE SERVICES SHAREPOINT 2010".PRéSENTATION CLUB MOSS CE JOUR "LA NOUVELLE ARCHITECTURE DE SERVICES SHAREPOINT 2010". par Patrick Guimonet
Ca y est la sortie RTM de SharePoint 2010 est annoncée pour le 16 avril 2010 (annonce faite ce jour par Erol Giraudy lors de la réunion du club MOSS). Vous pourrez trouver ici les slides de ma présentation du jour dans le cadre du club MOSS : 201...
Cliquez pour lire la suite de l'article par Patrick Guimonet [WINDOWPHONE7] PREMIERS PAS[WINDOWPHONE7] PREMIERS PAS par Vko
Hop voici les premiers pas avec les outils de développement pour Windows Phone 7. Premier changement suite à l'installation des outils : les type de projets pour la plateforme Windows Phone 7. Les projets se découpent en deux groupes : Les projet...
Cliquez pour lire la suite de l'article par Vko
Forum
PROBLEMEPROBLEME par kamikaze97441
Cliquez pour lire la suite par kamikaze97441
Logiciels
Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor
|