Ce projet WD17, transforme n'importe quelle image 2D en un nuage de particules 3D.
Le nuage de particules est compos de 131072 points qui peuvent tre anims en temps rel.

Vous pouvez choisir l'une des images dont le nom figure dans la liste qui se trouve en bas  droite
Ou utiliser le tir dplac depuis l'explorateur, avec une image de type .png, .jpg, .gif, .tif, .bmp de n'importe quelle taille.

Le code WinDev est l'exacte transposition d'un projet C++ crit avec Visual Studio (source disponible sur demande).
A l'exception du nuage de particule dont le rendu est effectu par l'API GDImage "GL_DrawCloud", l'ensemble du traitement temps rel est effectu dans la procdure "gl_DrawScene".

Les performances de la version WinDev sont identiques  celles du C++, car les traitements critiques sont effectus par GDImage qui utilise les extensions OpenGL implantes au niveau du GPU (carte graphique). 
Avec un I7 multi cur et une bonne carte graphique, l'utilisation CPU est infrieure  1%, mme lorsque l'option animation est coche.

Capture d'cran:

[img]http://www.zapsolution.com/pictures/Pix3D.png[/img]



L'application est "skinne" avec le thme "Scaff" de WinLIFT.


Utilisation du zoom :
Vous pouvez utiliser indiffremment la molte centrale de la souris, ou le potentiomtre vertical.

Utilisation de la souris :
Le bouton gauche permet de voir l'image sous tous les angles.
Le bouton droit permet d'effectuer une translation selon l'axe horizontal ou vertical.

Changement de palette :
Choisir dans liste l'un des noms prfix par "pal_". 
Slectionner "pal_image.png" pour revenir aux couleurs d'origine de l'image.
Note : le changement de palette concerne uniquement le nuage de particules.

A propos du code source :
Il est destin aux programmeurs qui connaissent la syntaxe du SDK Windows bas niveau, 
Il utilise directement la "Flat API" pour privilgier la vitesse et limiter la taille en utilisant le framework WinDev minimum.
A savoir uniquement 3 DLL(s) : 
1 - "Machine virtuelle"
2 - "Fonctions mathmatiques"
3 - "Fonctions standard"
Le point d'entre du programme se trouve dans la procdure dont le nom est "MainWindow" qui est appel directement depuis le code du projet.
Il n'y a ni fentre ni aucun champ WinDev, la fentre principale et les fentres filles sont cres directement avec l'API "CreateWindowEx".
Le conteneur GDImage/OpenGL est subclass dans la fonction "gl_WndProc" afin de pouvoir interagir avec la souris et grer le "drag and drop".
Le traitement temps rel est effectu  une frquence de 60Hz compatible avec celle de DirectDraw.
Le "SkinEngine" "WinLIFT" fonctionne en mode DWM compos (visible au niveau du dgrad dessin autour de la fentre principale lorsqu'on la dplace sur un fond blanc).
Le dplacement ou le redimensionnement de la fentre principale ne bloque pas l'animation lorsque celle-ci est active.

A quoi  sert :
Outre son aspect ludique, le nuage de point peut servir dans le cadre de rendu de surfaces godsiques, ou pour reprsenter des niveaux de tempratures avec une finesse plus prcise que celle des cartes mto classiques.
Il est galement possible d'utiliser des vecteurs  la place du nuage de points, ou d'utiliser des points de tailles variables.


Lien de tlchargement :
http://www.zapsolution.com/preview/pix3D_32.zip

Note : Le projet a t cr avec WD17, mais il devrait fonctionner sans problme avec les versions suprieures.
Vous devez dbloquer le ZIP avant de dcompresser les fichiers pour viter tout problme d'UAC.

--
Patrice Terrier
www.zapsolution.com>