jeudi 12 novembre 2026

PSTricks et l'IA (1)

 Il y a quelque temps, j'avais reçu une demande d'aide concernant un schéma réalisé avec PSTricks, pour lequel l'IA n'avait pas réussi à trouver de solution. Habitué aux bidouillages entre PostScript et PSTricks, j'avais finalement pu proposer une réponse. Cette expérience m'a donné envie d'explorer plus systématiquement les capacités d'une intelligence artificielle, en l'occurrence Claude (Anthropic), à utiliser PSTricks et à concevoir des solutions dans cet environnement.

Je n'ai utilisé que la version gratuite, ce qui limitait mon temps d'utilisation à 10 minutes par jour, parfois même à moins de cinq minutes, selon les disponibilités du moment et mon propre emploi du temps. Je lui ai soumis plusieurs projets et je présente ici celui qui vient enfin d'aboutir : les pavages de la sphère. Cette aventure aura duré un peu plus d'un mois.

Il a fallu à Claude un certain temps pour assimiler la programmation PostScript — et non se contenter de transcrire un code Python — puis comprendre comment l'intégrer à PSTricks. Mais, une fois ces deux étapes franchies, les choses sont allées très vite. Claude propose alors des solutions d'une qualité et d'une efficacité difficilement égalables. C'est tout simplement impressionnant !

Claude effectue des tests avant de proposer une réponse. Cela ne dispense évidemment pas l'utilisateur de vérifier le résultat, ni d'intervenir pour modifier le code, apporter des corrections ou demander de nouvelles fonctionnalités. Mais cette capacité à dialoguer, à corriger et à améliorer progressivement une solution constitue un véritable atout. C'est, à mes yeux, une intelligence authentique !

Bien entendu, tout cela a un coût — et je ne parle pas ici du coût financier. La presse s'en est d'ailleurs largement fait l'écho !

Pour la présentation du projet, j'ai indiqué comme coauteurs Claude (Anthropic) et m.l., mes initiales en minuscules. Si je suis resté le maître d'œuvre de l'ensemble, l'IA a fourni la plus grande partie du travail de programmation PostScript, avec l'appui de Python pour déterminer les caractéristiques géométriques des solides : coordonnées des sommets, définition des faces et maillage par triangulation.

Un aparté sur la question des coauteurs.

On connaît la polémique suscitée par le livre de Thélyson Orélien, C'était ça ou mourir, lorsqu'on a appris que l'auteur avait eu recours à l'IA pour écrire son ouvrage. Pourtant, avant cette révélation, le livre avait reçu de nombreux éloges, notamment de la part de Pierre Assouline, membre du jury Goncourt, ainsi que des participants à l'émission La Grande Librairie, lors de son invitation.

Après la révélation de l'utilisation de l'IA, il est apparu que C'était ça ou mourir devait être retiré des listes de candidats à plusieurs prix, dont le prix Goncourt. Thélyson Orélien aurait peut-être dû indiquer sur la couverture que son livre était le fruit d'une collaboration entre deux coauteurs : l'IA et lui-même.

Peut-on attribuer un prix littéraire à un livre de grande qualité, mais écrit avec l'aide de l'IA ? Puis-je glisser ici, la célèbre citation d'Alfred de Musset : « qu’importe le flacon, pourvu qu’on ait l’ivresse ? ».  Faudrait-il alors couronner deux auteurs ? Je ne suis pas certain que cela corresponde à l'esprit des jurés de ces prix.

Revenons à PSTricks et au package pst-pavage-sphere, développé avec l'aide de Claude (Anthropic). Une question se pose désormais : ce package pourrait-il être accepté sur le CTAN ?
Enfin, j'avoue, le texte ci-dessus a été révisé par ChatGPT.

pst-pavage : pavages de la sphère par des polyèdres

pst-pavage est une extension de PSTricks qui trace le pavage de la sphère associé à un polyèdre : chaque face est projetée sur la sphère et devient un polygone sphérique, dont les côtés sont des arcs de grands cercles. C'est une aide pour réaliser des illustrations destinées à une projection sur écran ou à un document.

Ce que propose le package

  • 35 solides : solides de Platon, d'Archimède et de Catalan, prismes, antiprismes et leurs duaux ;
  • quatre modes de coloriage ;
  • la superposition d'un solide et de son dual ;
  • des faces transparentes, ou supprimées, avec une couleur propre pour l'intérieur ;
  • la numérotation des faces, pour les choisir facilement ;
  • le choix de la couleur et de l'épaisseur des arêtes, le contour facultatif ;
  • des animations, avec le package animate.

Un premier exemple

\documentclass{article}
\usepackage{pst-pavage}
\begin{document}
\begin{pspicture}(-3,-3)(3,3)
  \psPavageSphere[solide=14]
\end{pspicture}
\end{document}

La compilation est celle de tout document PSTricks :

latex   document
dvips   document
ps2pdf  -dALLOWPSTRANSPARENCY  document.ps

L'option -dALLOWPSTRANSPARENCY n'est nécessaire que pour la transparence. Dans un éditeur comme TeXworks ou WinEdt, elle se place dans les arguments de l'outil ps2pdf.

 

Les 35 solides

La clé solide prend une valeur de 0 à 34 : solides de Platon (0 à 4), d'Archimède (5 à 17), de Catalan (18 à 30), puis prisme, antiprisme, bipyramide et trapézoèdre (31 à 34, avec la clé ncotes pour le nombre de côtés). Le solide 14 de l'exemple ci-dessus est l'icosaèdre tronqué, le « ballon de football ».

 

Quatre manières de colorier

La clé coloriage : 0 une teinte par face ; 1 triangles de symétrie en damier ; 2 teinte selon le nombre de côtés ; 3 sphère grise, idéale pour mettre les arêtes en valeur.

\psPavageSphere[solide=14, coloriage=2]

Un solide et son dual


Avec dual=1, le dual est tracé par-dessus : ses arêtes en blanc, celles du solide en noir. Le tétraèdre est son propre dual : on obtient deux tétraèdres imbriqués (stella octangula).

\psPavageSphere[solide=3, coloriage=3, dual=1]
 

Faces transparentes, faces supprimées

Faces transparentes, faces supprimées, couleur de l'intérieur

 


\psPavageSphere[solide=14, coloriage=2, transp=6, opacity=0.3]
\psPavageSphere[solide=14, coloriage=0, sface=8 19 10 4, incolor=yellow]
\psPavageSphere[solide=1, coloriage=0, rAz=35, sface=0, incolor=cyan, arete=blue]
\psPavageSphere[solide=14, coloriage=2, rAz=35, supp=5, incolor=orange]
 
  • transp (par nombre de côtés) et tface (par numéro) rendent des faces transparentes ; opacity règle l'opacité, comme dans PSTricks ;
  • supp (par nombre de côtés) et sface (par numéro) retirent des faces : on voit alors l'intérieur du solide ;
  • incolor donne une couleur aux faces vues de l'intérieur ;
  • plusieurs valeurs sont possibles : transp=5 6, sface=1 2 3, ou même sface={0 1 10 {} for} pour les faces 0 à 10.


 

Numéroter les faces



Pour choisir des faces par leur numéro, il suffit de les afficher d'abord :

\psPavageSphere[solide=14, coloriage=2, numeros=1]
\psPavageSphere[solide=14, coloriage=2, numeros=1, tface=8 19 10 4, opacity=0.3]
 
 

Un fond coloré

Le package ne gère pas de fond : l'outil de PSTricks pour cela est \psframe, dessiné avant la sphère.

\begin{pspicture}(-3,-3)(3,3)
  \psframe*[linecolor=cyan!50](-3,-3)(3,3)
  \psPavageSphere[solide=14]
\end{pspicture}
 

Taille et point de vue

Le rayon se donne comme celui de \pscircle, en unités PSTricks (1 cm par défaut, multiplié par unit) : le défaut rayon=2.8 convient à une fenêtre \begin{pspicture}(-3,-3)(3,3). La vue est une projection orthographique : l'azimut rAz fait tourner le solide autour de l'axe vertical, l'élévation elevation l'incline.

Animer

\documentclass{standalone}
\usepackage{pst-pavage}
\usepackage{animate}
\begin{document}
\begin{animateinline}[autoplay,loop,controls]{20}
  \multiframe{60}{rAz=0+6}{%
    \begin{pspicture}(-3,-3)(3,3)
      \psPavageSphere[rAz=\rAz,solide=15,coloriage=2,elevation=25]%
    \end{pspicture}%
  }
\end{animateinline}
\end{document}
 

Le pas de 6° boucle exactement sur un tour. L'animation se lit dans Adobe Reader ou Acrobat. Avec l'option [export] du package animate, le PDF contient une page par image ; on les extrait avec Ghostscript, puis on assemble un GIF avec ImageMagick :

gswin64c -dNOPAUSE -dBATCH -sDEVICE=png16m -r200 -dGraphicsAlphaBits=4 -sOutputFile=image-%03d.png document.pdf
magick -delay 5 -loop 0 -colors 96 -layers Optimize image-*.png anim.gif

Sous PowerShell, les arguments de Ghostscript doivent être entre guillemets, par exemple "-sOutputFile=image-%03d.png".

 

Téléchargement et documentation

 pst-pavage-sphere.zip

ou

pst-pavage-sphere.zip 

Le package comprend pst-pavage.sty, pst-pavage.tex et pavages-sphere.pro, à placer dans le dossier du document. La documentation illustrée (pst-pavage-doc.pdf, 12 pages) décrit toutes les clés avec des exemples. Un script tetra.bat (Windows) et tetra.ps permettent aussi de produire les images avec Ghostscript seul, sans LaTeX. Les exemples sont à compiler.

 

Licence et crédits

Version 1.0, distribuée sous la licence LPPL (The LaTeX Project Public License).

Auteurs : m.l. et Claude, assistant d'intelligence artificielle développé par Anthropic ; le code a été mis au point au fil d'un dialogue, avec essais sous Windows.

PSTricks est une œuvre de Timothy Van Zandt, popularisée et développée par Denis Girou, maintenue actuellement par Herbert Voss.

Contact : manuel.luque27@gmail.com