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édente | ||
| progrem [2019/06/18 06:48] – [Un progrem qui déssine] bigMax | progrem [2019/06/18 06:56] (Version actuelle) – 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. | 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 equationEugenePartieDroite |
| - | si ( condition(ligne, colonne, animation) ) { | + | |
| - | | + | |
| - | } sinon { | + | |
| - | pixel = new Pixel(bleu) | + | |
| - | | + | } else { |
| - | | + | couleur = 'rgb(135, 206, 235)'; |
| - | } | + | |
| - | + | ||
| - | for image i { | + | |
| - | | + | |
| - | for ligne l { | + | |
| - | | + | |
| - | for colonne c { | + | |
| - | si ( condition(c, l, i) ) { | + | |
| - | pixel = ligne[c] | + | |
| - | pixel.couleur = rose | + | |
| - | } | + | |
| - | paintPixel(pixel) | + | |
| - | } | + | |
| - | paintLigne(ligne) | + | |
| } | } | ||
| - | | + | |
| } | } | ||
| </ | </ | ||
| Ligne 59: | Ligne 47: | ||
| * Historiser dans une pile les affectations de variables. | * Historiser dans une pile les affectations de variables. | ||
| * Colorer les blocks de code éxecutés (if / then / else) | * Colorer les blocks de code éxecutés (if / then / else) | ||
| - | * Mettre en exergue l' | + | * Mettre en exergue l' |
| - | | + | |
| + | * Indiquer les index des lignes et colonnes. | ||
| + | * Historiser dans une pile les commentaires ou bien afficher dans une bulle les commentaires. | ||
| + | * Ajouter un bouton play / pause / next step. | ||
| + | * Ajouter une commande à " | ||
| + | * Ajouter une commande à " | ||
| + | * Permettre la rédaction de Progrem en live dans un éditeur de texte. | ||
progrem.1560840480.txt.gz · Dernière modification : de bigMax
