Pavage de Penrose
Accueil
Introduction
Ce logiciel, codé en python, permet de facilement généré des pavages de Penrose ( https://fr.wikipedia.org/wiki/Pavage_de_Penrose ) , et plus généralement toute formes de pavage récursif utilisant des triangles d'or, puis de les exporter en PostScript, afin de les utiliser pour décorer différents objets.
Le principe est de partir d'une configuration de base avec quelques triangles d'or fin ou large. Puis de les découper récursivement suivant un certain pattern.
Avec certains réglages, on retrouve donc des pavages apériodique, qui peuvent être utilisé pour décorer les cotés d'une boite, une coque de smartphone, ou faire un auto-collant pour ordi !
Exemples appliqué à une boite à thé et à un jeu de carte :
Sommaire
Fichiers
L’intégralité des fichiers est ici, il y a :
Principe
Le principe de ce logiciel est de permettre d'effectuer des figures récursives sur des triangles d'or, en les découpant en plusieurs triangles d'or.
Découpage
Il y a 2 triangles d'or, le fin (en bleu) et le large (en jaune). on peut découper un triangle d'or en 2 ou 3 autres triangles d'or, plus petit, et qui auront les mêmes proportions. ce qui donne, pour le triangle fin et pour le triangle large :
Or, lorsque l'on rajoute les différentes symétries possible, on obtient beaucoup plus de découpage possible, et afin de ne pas entraver la liberté du logiciel, elles sont toutes utilisables. Mais, afin de ne pas surcharger l'interface, chaque configuration à un code, et on saisie ce code dans l'interface afin de choisir sa configuration.
La correspondance entre le code et la configuration est donnée dans ses 2 images :
Récursion
Une fois que l'on sait découper un triangle en plusieurs triangles, on peut répéter le processus un certain nombre de fois, afin d'avoir une figure récursive.
Voici par exemple, une illustration de la récursion sur les 2 triangles de base :
Interface
L'interface ce découpe en 2 parties principales.
- A gauche, la zone de dessin, c'est ici que la figure sera affichée.
- A droite, la zone de paramétrage, qui se décompose 4 parties.
Découpage
Cette première partie permet de contrôler la manière dont s’exécute la récursion :
- Nombre de récursion : permet de choisir quel sera la profondeur de récursion (allant de 0, avec juste les triangles de bases, à 8, car au delà, le logiciel rame trop, si vous voulez outrepassez cette limite, il vous faudra modifier le code à la ligne 957, (je peux vous aidez si besoin mail)
- Mode : Précise la figure de base (que l'on peut voir lorsque l'on met lorsque la récursion est à 0)
- Découpage Fin et Découpage Large : Précise la manière de découper un triangle donné. La correspondance entre le code du découpage, et le découpage est décrite dans les fichiers ci-dessus. Il est possible de préciser plusieurs découpages, avec un ' ; ' comme séparateur. Dans ce cas la, le logiciel choisira le découpage de manière aléatoire pour chaque triangle.
Affichage
Cette partie précise la manière d'afficher chacun des triangles.
On peut préciser :
- la couleur du fond
- La présence ou non d’étiquette ( indique si un sommet est le A, B ou C dans le triangle, peut être utile pour la mise au point d'un pavage) et si oui :
- la couleur de la police d’écriture
Ensuite, pour chacun des 2 types de triangles on peut choisir :
- Si le fond doit exister ou non (si il existe, il sera enregistrer dans le PostScript, ce qui rajoute des objets) et si oui :
Et pour chacune des arêtes du sommet :
- La présence ou non de l’arête, et si oui :
- la couleur (en hexadécimal ou si elle est basique, en anglais)
- l’épaisseur, en pixel
Si un objet est coché, il sera enregistré dans le Post Script, même si il n'est pas visible (blanc sur fond blanc).
Ainsi, cela peut poser des problèmes lors de l’importation avec Inkscape, notamment si on veut manipuler beaucoup d'objet.
Commandes
Dans cette partie, on retrouve les commandes de bases du logiciel.
- Actualiser le dessin : pour des raisons de rapidité, le logiciel ne rafraîchit pas l'image a chaque modification, mais uniquement lorsque ce bouton est pressé. (Il est également possible d'appuyer sur la touche espace)
- Exporter une image vectoriel : Sauvegarde l'image au format PostScript (format vectoriel) afin de pouvoir le rouvrir avec Inkscape (ou n'importe quel manipulateur d'image vectoriel), et de pouvoir manipuler le dessin (union des chemin, etc..). Si vous êtes ce genre de personne à être sur Windows, l'importation nécessitera une certaine manipulation : https://inkscape.org/fr/apprendre/faq/#comment-ouvrir-des-fichiers-eps-dans-windows
- Enregistrer les paramètres : Permet de sauvegarder les paramètres qui ont permis de générer l'image (affichages des traits, couleurs, profondeur de récursion, etc... ), afin de pouvoir les réutiliser par la suite.
Le format est le ".pp" que j'ai crée pour l'occasion, et qui est simplement du texte brut. Attention cependant à ne pas modifier manuellement ces fichiers, cela peut entraîner des bugs dans le logiciel.
- Charger des paramètres : Permet d'ouvrir une certaine configuration de l'application. (enregistrer au format .pp )
- Quitter l'application : bouton pour fermer proprement l'application
Statistiques
Cette dernière partie affiche les données de calculs qui peuvent être intéressant, à savoir le temps de calcul, et le nombre des différents objets sur l'image.
Démo
dernière mise à jour : 02/02/2021