mardi 28 avril 2015

P.D.I version 2.0 (déformation 2D en temps réel ! ----- 1ère phase du développement )


Nome du projet : PDI ver 2.0 étant donné la version 1.0 (rendu software) je l'ai réalisé en 2003
Date de publication : 28/04/2015
Duré : une semaine
Langage C++
Compilateur Visual C++ 6.0
OS win32
Noyau du logiciel
- éditeur des points de control
- la triangulation de Delauney ( l'algorithme principale du logiciel et le plus complexe!)
- booster avec l'accélérateur graphique OpenGL 1.4 hardware

Résultat : déformation super fluide

Prochaine étape
capture de la vidéo et inclure la technologie pixel shader pour les transformations dans l'espace des couleurs afin de réaliser le morphing entre 2 images ou plus précisément deux vidéos et tout ça en temps réel...


samedi 4 avril 2015

un programme de simulation par ordinateur pour calculer la valeur de pi en utilisant la théorie des probabilités


le problème consiste à disperser N allumettes sur une table sur laquelle on a tracé des lignes horizontales équidistantes séparé par des distances deux fois la longueur d'une allumette, puis à chaque expérience on recense le nombres qui coupent les lignes , et on divise le nombre total par le nombres de cas favoris , la théorie prédit que ce rapport s'approche de la valeur de pi en augmentant N indéfiniment!


théorie

dP/d(teta) = L|sin(teta)|/D * 1/(2 pi)
probabilité qu'une allumette coupe l'une des lignes horizontales
P = intégral(dP,teta,0,2Pi) = 2L/(D*pi)
D = 2L
P = 1/pi
p = limite N->infini n(favoris)/N = 1/pi
N/(nfavoris) -> Pi = 3.1459.....

simulation

j'ai créé ce programme pour simuler cette expérience et le résultat est époustouflant , à un point que j'ai poussé l'expérience à simuler plus de 200 000 000 la précision de pi est de l'ordre de 0.0001 , voir la vidéo ...

2eme expérience :

 le cas ou les allumettes coupent simultanément les lignes  horizontales et verticales

dP/d(teta) = L|sin(teta)|/D *L|cos(teta)|/D * 1/(2 pi) = L²/D²|sin(2*teta))|*1/(4 pi) = 
P = intégral(dP,teta,0,2Pi) = L²/(D²*pi)
D = 2L
P = 1/(4*pi)