Présentation de l'environnement BBgraf

Un environnement pour la production d'images

Il est constitué de divers formulaires permettant de décrire au serveur l'image désirée. Le langage de description utilisé est postscript, enrichi d'un certains nombre de macros (le format jps).

L'utilisateur dispose de 4 méthodes pour obtenir une image :

  • Pour certaines images types (fonctions numériques, suites récurrentes, lois binomiales, etc...) la page Formulaires propose quelques formulaires générant directement le code postscript, permettant ainsi un usage rapide.
  • Si l'image voulue est l'une de celles publiées ici, ou si elle n'en est pas trop éloignée, il faut sélectionner le lien "source jps", puis choisir le menu Éditer. On a alors le code source qu'il suffit de proposer (tel quel ou après modifications) au serveur pour obtenir l'image voulue au format voulu. Exemple : essayer de modifier les coordonnées des 3 points qui paramètrent ce dessin de cercle inscrit dans un triangle.
  • On peut également utiliser une fusion des deux méthodes précédentes : on commence par réaliser une image en utilisant les formulaires préremplis, puis, une fois l'image obtenue, on sélectionne le lien "source jps", puis le menu Éditer. On a alors le code source qu'il suffit de modifier avant de le reproposer au serveur.
  • Pour les images qui n'existent pas encore ici, on utilise le format jps (ou seulement Postscript) à partir d'un formulaire vierge

Avertissements

On ne vise que des dessins relativement simples. Pour des dessins plus complexes, il faudra vous orienter vers des logiciels plus consistants (Metapost par exemple)

Quand au code postscript proposé, il est le fruit d'une expérience, d'une évolution, et reste toujours perfectible (voire largement perfectible). En conséquence, ne vous attendez pas à trouver ici des modèles : ce sont plutôt des exemples que vous êtes libres de modifier et réécrire.

Particularité

La particularité, c'est que les fichiers postscript produits sont humainement lisibles. Il en résulte en particulier que chacun des fichiers obtenus est modifiable avec n'importe quel éditeur de texte, ce qui garantit une certaine pérennité du résultat, puisque les modifications ultérieures resteront possibles même si l'accès aux outils l'ayant produit a disparu.
Dans le même ordre d'idée, si vous avez obtenu un fichier décrivant la courbe d'une fonction numérique par exemple, vous pouvez alors obtenir n'importe quel dessin de n'importe quelle courbe de fonction numérique en modifiant seulement, à l'aide de votre éditeur préféré, quelque octets de votre fichier PostScript.

Le format jps

C'est donc le format qui sert de référence au serveur pour construire la figure. Destiné à l'origine à une utilisation strictement personnelle, son nom n'a pas fait l'objet de recherches soignées, et il ne veut rien dire...

Ce format est constitué de tout un ensemble de macros postscript permettant la description codée de dessins mathématiques. Pour le code, la contrainte imposée était qu'il reste humainement lisible. Par exemple, voici le code pour un dessin simple de parabole, et voici celui pour un dessin plus riche composé de 2 paraboles de couleurs distinctes, délimitant un domaine hachuré.

La seule surprise vient du fait que l'on met les opérandes AVANT de faire les opérations (par exemple, on pose {f} avant de demander le tracé avec courbe). Avec un peu d'habitude, on y prend goût et l'exercice est très formateur pour des élèves en lycée (du point de vue des priorités algébriques notamment). Vous pouvez vous entrainer avec ce formulaire dont la saisie de fonction se fait ainsi.

La traduction du format jps vers le format postscript se fait avec un script perl (jps2ps.pl). Ce dernier se contente de regarder quelles sont les macros utilisées dans le fichier jps, pour insérer leur définition en tête de fichier.

Pour une description du format jps, voir le guide de l'utilisateur de jps2ps à la page Documentation.

Participer

En utilisant BBgraf, en me faisant toute critique, remarque ou suggestion, etc... toute participation est bienvenue.