begin process at 2012 05 27 16:30:08
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > FREEZSAVER - SCREEN SAVER QUI "GELE" L'ECRANT

FREEZSAVER - SCREEN SAVER QUI "GELE" L'ECRANT


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Niveau :Initié Date de création :06/01/2004 Vu / téléchargé :4 876 / 149

Auteur : basted

Ecrire un message privé
Site perso
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Pour plus d'info voir sur mon site:
http://mignonsoft.free.fr/logiciel/FreezSave r/index.htm

L'agorithme general est assez simple:
1) prendre un point au hasard
2) prendre la couleur de ce point ainssi que le point l'entourant
3) faire la moyenne de toute ces couleur
4) appliqer a tout ces meme point la couleur moyenne

Source

  • En imaginant disposer de class CPoint et CRGB (dont on comprendra intuitivement de comportement )
  • for (int i=0;i<nbLoop;i++)
  • {
  • // etape 1
  • CPoint ptC,ptG,ptD,ptH,ptB;
  • ptC.x=rnd()%xScreen;
  • ptC.y=rnd()%yScreen;
  • ptG=ptD=ptH=ptB=ptC;
  • ptG.x--;
  • ptD.x=++;
  • ptH.y=--;
  • ptB.y=++;
  • // etape 2
  • CRGB rgbC = ptC.GetRGB();
  • CRGB rgbG = ptG.GetRGB();
  • CRGB rgbD = ptD.GetRGB();
  • CRGB rgbH = ptH.GetRGB();
  • CRGB rgbB = ptB.GetRGB();
  • // etape 3
  • CRGB moyenne;
  • moyenne.x=(rgbC.x+rgbG.x+rgbbD.x+rgbH.x+rgbB.x)/5.0;
  • moyenne.y=(rgbC.y+rgbG.y+rgbbD.y+rgbH.y+rgbB.y)/5.0;
  • // etape 4
  • ptC.SetRGB(moyenne);
  • ptG.SetRGB(moyenne);
  • ptD.SetRGB(moyenne);
  • ptB.SetRGB(moyenne);
  • ptH.SetRGB(moyenne);
  • }
En imaginant disposer de class CPoint et CRGB (dont on comprendra intuitivement de comportement  )

for (int i=0;i<nbLoop;i++)
{
   // etape 1
   CPoint ptC,ptG,ptD,ptH,ptB;
   ptC.x=rnd()%xScreen;
   ptC.y=rnd()%yScreen;
   ptG=ptD=ptH=ptB=ptC;
   ptG.x--;
   ptD.x=++;
   ptH.y=--;
   ptB.y=++;

   // etape 2
  CRGB rgbC = ptC.GetRGB();
  CRGB rgbG = ptG.GetRGB();
  CRGB rgbD = ptD.GetRGB();
  CRGB rgbH = ptH.GetRGB();
  CRGB rgbB = ptB.GetRGB();

  // etape 3
  CRGB moyenne;
  moyenne.x=(rgbC.x+rgbG.x+rgbbD.x+rgbH.x+rgbB.x)/5.0;
  moyenne.y=(rgbC.y+rgbG.y+rgbbD.y+rgbH.y+rgbB.y)/5.0;

  // etape 4
  ptC.SetRGB(moyenne);
  ptG.SetRGB(moyenne);
  ptD.SetRGB(moyenne);
  ptB.SetRGB(moyenne);
  ptH.SetRGB(moyenne);
}

 Conclusion

cf.: http://mignonsoft.free.fr/logiciel/FreezSaver/inde x.htm

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip Source avec une capture 3DCONTROLS - INTERFACE UTILISATEUR 3D, GUI 3D, FRAMEWORK 3D
Source avec Zip Source avec une capture MYGLSAVER - SCREEN SAVER 3D TRANSFORMANT LE BUREAU OU DES IM...
Source avec Zip Source avec une capture DLLDEPENDANCY - AFFICHE A CHAQUE DLL LA LIST DE PROCESS L'UT...
Source avec Zip Source avec une capture MYDEBUGSERVER - SIMPLE PETITE FENETRE DE MUTLI-DEBUGAGE
Source avec Zip Source avec une capture SHORTCUTKEY - PROG QUI FAIT UN HOOK DU CLAVIER POUR AUTOMATI...

 Sources de la même categorie

Source avec Zip Source avec une capture PLANNING D'EQUIPE par grephit
Source avec Zip APPLICATION DE DESSIN DE QUELQUES FIGURES par laguchori
Source avec Zip Source avec une capture HDR EXPOSURE FUSION par mecrosoft
Source avec Zip Source avec une capture IRC CLIENT MULTISERVEUR EN MFC (TXIRC) par TeniX
Source avec Zip ENTETE DU FICHIER BMP (BIPMAP) par k.Lutchi

Commentaires et avis

Commentaire de morgandetoi06 le 06/01/2004 21:55:06

y manque le fichier winternl.h ?
si tu pouvait mettre un exe dans le zip ça serait bien stp

Commentaire de morgandetoi06 le 06/01/2004 21:56:28

oups dsl j avait po vu le .scr :) lol

Commentaire de basted le 07/01/2004 10:24:58

Le fichier "winternl.h" fait normalement partie de ton path des include de visual studio que soit la v6.0 ou .NET (par contre elle est liée a ta plateforme car elle est liée a NTDLL.DLL)

Pour MAJ de tes API tu peut utiliser le site MS "SDK update": http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
(sinon si tu a VS6.0 tu a bien mis le SP5 ?, si pb sur .NET v2002 ou 2003?)

Voila ! En tout cas: que votre ecrant "freezer" soit avec vous ;-)

Commentaire de gaspos le 16/01/2006 13:39:50

Je cherchais un petit exemple de screen saver simple à reprendre et à modifier à ma sauce. Celui-ci est vraiment très bien, simple et clair (pas très orienté objet, avec des variables globles un peu partout, mais bon...) et en plus les effets sont vraiement sympas !
Merci à Sebastien Bloc, que je ne manquerais pas citer si mon bout de code est rendu publique.

Commentaire de basted le 16/01/2006 14:21:23

Merci, et je suis content que ca puissent re-servire.

Si le sujet t'interesse j'ai aussi fait une version OpenGL qui resemble un peut (avec plein d'effet 3D)
http://www.cppfrance.com/code.aspx?ID=19650

(Au niveau objet je suis bien d'accord avec toi c'est vraiement fait a l'arrache)

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,749 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales