A l'IUT de Dijon, on a du commencer a apprendre le langage ADA (dérivé du pascal, codé par un français pour le compte du gouvernement américain ?). C'est un langage fortement typé et fortement chiant, c'est tout ce dont je me souviens. Je suis retombé sur ce screenshot, que de bons souvenir...
Affichage des articles dont le libellé est fac. Afficher tous les articles
Affichage des articles dont le libellé est fac. Afficher tous les articles
mercredi 26 décembre 2007
ADA power !
A l'IUT de Dijon, on a du commencer a apprendre le langage ADA (dérivé du pascal, codé par un français pour le compte du gouvernement américain ?). C'est un langage fortement typé et fortement chiant, c'est tout ce dont je me souviens. Je suis retombé sur ce screenshot, que de bons souvenir...
Player en MFC C++ !
Transformée de fourrier lente 2D
Bon les maths c'est pas mon truc. J'ai vaguement compris ce qu'était la transformée de fourrier, et il fallait l'implémenter dans le langage de notre choix. J'ai commencé en PHP, le langage le plus commode :
J'ai d'abord découpé l'image d'entrée en un tableau d'entier a deux dimentions (entier équivalent à unsigned char). Ceci était pour optimiser la vitesse de lecture des pixels.
J'ai ensuite 4 boucles imbriqués qui, pour chacun des pixels (i, j), alors faire la somme d'un calcul complexe pour chacun des pixels de l'image (i,j).
Puis la recomposition de l'image en écrivant pixel par pixel les valeurs du tableau.
Problème, l'implémentation des complexes, notamment exp(-2*i*val) était ennuyeuse. J'ai sèché. Le problème a été résolu en C#, après avoir revu des formules sur les complexes : j'aurai du écouter en terminale !
J'ai d'abord découpé l'image d'entrée en un tableau d'entier a deux dimentions (entier équivalent à unsigned char). Ceci était pour optimiser la vitesse de lecture des pixels.
J'ai ensuite 4 boucles imbriqués qui, pour chacun des pixels (i, j), alors faire la somme d'un calcul complexe pour chacun des pixels de l'image (i,j).
Puis la recomposition de l'image en écrivant pixel par pixel les valeurs du tableau.
Problème, l'implémentation des complexes, notamment exp(-2*i*val) était ennuyeuse. J'ai sèché. Le problème a été résolu en C#, après avoir revu des formules sur les complexes : j'aurai du écouter en terminale !
CSG to Voxel
Bien que ce n'est pas un langage que l'on utiliserait habituellement pour faire ceci, je dois dire que l'implémentation des expressions régulières en PHP est si simple, que le PHP devient dans ce cas un langage très utile.
J'ai créé un convertiseur de fichier CSG (*.pov, de PovRay) vers un autre fichier CSG mais qui ne créé lui que des voxels (pixels volumétriques).
Dans un premier temps, je traite le fichier d'entré pour éliminer les parasites (les structures de contrôle, les commentaires, les lignes vides), puis je met les accolades au bon endroit.
Ensuite je parcours ce fichier ainsi nettoyé pour traiter les formes a dessiner en 3 temps. Premier temps, est la détection de la forme : { . A partir de ceci, toutes les lignes suivantes, sauf si cette ligne vaut précisément }, alors fait parti de la définition de la forme. Selon la forme courante, j'attends différents paramètres (coordonnées, diamètre, rotation, translation) que je stock dans un tableau temporaire, lequel est lu lors de la détection de l'accolade fermante (accolade qui doit être de la même profondeur que lors de l'ouverture avec la définition de la forme) et j'écris sur le fichier de sortie mes Voxels.
J'ai créé un convertiseur de fichier CSG (*.pov, de PovRay) vers un autre fichier CSG mais qui ne créé lui que des voxels (pixels volumétriques).
Dans un premier temps, je traite le fichier d'entré pour éliminer les parasites (les structures de contrôle, les commentaires, les lignes vides), puis je met les accolades au bon endroit.
Ensuite je parcours ce fichier ainsi nettoyé pour traiter les formes a dessiner en 3 temps. Premier temps, est la détection de la forme :
Inscription à :
Articles (Atom)
