Page 1 sur 1

Dessine moi un Open Badge communautaire

Message non luPosté: 16 Avr 2021, 07:30
de cent20
Au printemps dernier, twitter s'est enflammé sur la question des open badge que l'éducation nationale souhaitait accorder à ses enseignants méritants.



Les enseignants, qui auraient préféré une augmentation, s'indignaient alors du mépris avec lequel ils étaient traités.

Le vrai problème d'un open badge c'est le coût de fabrication, il faut payer un graphiste qui va concevoir et réaliser le badge en question.

Comme l'argent ne pousse pas sur les arbres, voici une proposition technique pour fabriquer des open badges avec un coût nul ou presque, un open badge communautaire pour les diviser tous.

Code: Tout sélectionner
import turtle
list1 = ["blue", "white", "red"]
for i in range(2*42) :
  turtle.color(list1[i%3])
  turtle.pensize(10+2)
  turtle.forward(i)
  turtle.left(59)


13760

Code: Tout sélectionner
import turtle
list1 = ["red", "orange", "yellow", "green", "black"]
for i in range(125) :
  turtle.color(list1[i%5])
  turtle.pensize(10+2)
  turtle.forward(i)
  turtle.left(59)


13758
Celui-ci a été réalisé par un élève de seconde, quand on vous dit que c'est simple à faire !


Code: Tout sélectionner
import turtle
list1 = ["green", "white", "red", "green", "white"]
for i in range(3*42) :
  turtle.color(list1[i%5])
  turtle.pensize(10+2)
  turtle.forward(i)
  turtle.left(59)


13761

Code: Tout sélectionner
import turtle
list1 = ["pink", "red", "orange", "yellow", "green", "blue", "purple"]
for i in range(3*42) :
  turtle.color(list1[i%7])
  turtle.pensize(10+2)
  turtle.forward(i)
  turtle.left(59)


13764


Le code python est extrêmement simple, une simple boucle python, une liste que l'on parcourt, et le reste d'une division euclidienne pour ne pas faire un

En nuance de gris, c'est presque plus beau mais un peu moins communautaire...

Code: Tout sélectionner
import turtle
list1 = ["#eeeeee", "#cccccc", "#aaaaaa", "#888888", "#666666"]
for i in range(3*42) :
  turtle.color(list1[i%5])
  turtle.pensize(10+2)
  turtle.forward(i)
  turtle.left(59)


13762

Code: Tout sélectionner
import turtle
list1 = ["#eeeeee", "#cccccc", "#aaaaaa", "#888888", "#666666", "#424242", "#212121"]
for i in range(3*42) :
  turtle.color(list1[i%7])
  turtle.pensize(10+2)
  turtle.forward(i)
  turtle.left(59)

13763

Bien évidemment, on peut jouer avec le décalage entre le nombre de coté de l'hexagone et le nombre d'éléments du tableau pour obtenir des effets plus esthétiques les uns que les autres.

Je n'aurais pas la prétention de dire que c'est de l'art, mais à titre personnel je trouve ça plutôt beau.

Re: Dessine moi un Open Badge communautaire

Message non luPosté: 16 Avr 2021, 07:44
de redgl0w
Bonne démonstration aussi des possibles entrées de couleur sur numworks (on ne voit pas souvent des couleurs hexadécimales utilisés). Pour les niveaux de gris, un
Code: Tout sélectionner
list1=["0","0.2","0.4","0.6","0.8","1"]
aurait aussi pu bien marcher. Pour rappel, voici la liste des noms de couleurs supportés, et ici les types de valeurs supportés comme couleur. Aussi, ces couleurs sont supportés dans tout les modules actuels (kandinsky, turtle, ou matplotlib.pyplot).

Re: Dessine moi un Open Badge communautaire

Message non luPosté: 22 Sep 2021, 15:19
de cent20
Je viens de donner ce travail à faire à mes spé NSI, ils vont me fabriquer avec amour un peu moins de 42 badges uniques et colorés.

Lors de l’activité “Débuter et découvrir python3”, vous avez découvert ce code python :

Code: Tout sélectionner
from turtle import *
liste = ["pink", "red", "orange", "yellow", "green", "blue", "purple"]
for i in range(3*42) :
  color(liste[i%7])
  pensize(10+2)
  forward(i)
  left(59)


qui produit sur une calculatrice NumWorks ce graphique :

Image

Vous devez vous approprier ce code python, le modifier jusqu’à obtenir un résultat que vous jugerez satisfaisant. Vous copierez le code python et l’image générée (une capture propre, photo interdite, capture complète de l’écran à proscrire).

Je collerais quelques rendus ici et probablement sur twitter également.