progrem
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
progrem [2019/06/01 22:22] – [Ajout du framework de test unitaire jasmine] bigMax | progrem [2019/06/18 06:51] – bigMax | ||
---|---|---|---|
Ligne 9: | Ligne 9: | ||
* La " | * La " | ||
* L' | * L' | ||
- | |||
===== Un progrem qui déssine ===== | ===== Un progrem qui déssine ===== | ||
Un progrem qui dessine dessinerait des images fixes ou animées. Le dessin produit serait " | Un progrem qui dessine dessinerait des images fixes ou animées. Le dessin produit serait " | ||
+ | Je propose que le dessin soit constitué d'une grille de pixel. La fonction principale du Progrem serait de colorier chaque case une par une. La fonction est pure : elle reçoit les coordonnées d'une case et elle détermine la couleur de la case. | ||
===== Le code d'un Progrem ===== | ===== Le code d'un Progrem ===== | ||
On se concentre sur l' | On se concentre sur l' | ||
+ | |||
+ | Un premier progrem qui déssine le coeur déEugene Beutem est doté d'une fonction de coloriage comme celle-ci: | ||
<code js> | <code js> | ||
- | + | function | |
- | function | + | |
- | | + | var y = ligne * contexte.resolutionCartesienneEnY + contexte.decallageCartesienEnY; |
- | | + | var equationEugenePartieGauche = Math.pow(Math.pow(x, 2) + Math.pow(y, 2) - 1, 3); |
- | + | | |
- | | + | |
- | | + | |
- | } sinon { | + | if ( equationEugeneDifference < 0 ) { |
- | | + | |
+ | } else { | ||
+ | | ||
} | } | ||
- | return | + | return |
} | } | ||
+ | </ | ||
+ | |||
+ | ===== Mettre en avant le code du Progrem ===== | ||
+ | * Colorer | ||
+ | * Surligner | ||
+ | * Souligner | ||
+ | * Encadrer | ||
+ | * Mettre en gras | ||
+ | |||
+ | Stratégie : | ||
+ | * Attribuer une couleur aux variables à leur rencontre. | ||
+ | * Historiser dans une pile les affectations de variables. | ||
+ | * Colorer les blocks de code éxecutés (if / then / else) | ||
+ | * Mettre en exergue l' | ||
+ | | ||
- | for image i { | ||
- | clearImage() | ||
- | for ligne l { | ||
- | ligne = image[l] | ||
- | for colonne c { | ||
- | si ( condition(c, | ||
- | pixel = ligne[c] | ||
- | pixel.couleur = rose | ||
- | } | ||
- | paintPixel(pixel) | ||
- | } | ||
- | paintLigne(ligne) | ||
- | } | ||
- | paintImage(image) | ||
- | } | ||
- | </ | ||
===== Coder un lecteur de progrem en typescript ===== | ===== Coder un lecteur de progrem en typescript ===== |
progrem.txt · Dernière modification : 2019/06/18 06:56 de bigMax