Hervaldsheim Informatique Logiciels Carto'magic Carto'magic : fondements et objectifs

Carto'magic : fondements et objectifs

1°/ Préambule

J'ai développé ce logiciel en complément de l'excellent GTT de guntram que l'on peut trouver ici. Je m'associe à une kyrielle de personnes qui ont pu faire leur premiers pas grâce à l'initiative de cette personne et qui le remercient grandement. Son logiciel est très versatile et permet de construire beaucoup de types de galons, identifiés par des techniques (thread-in, broken twill, brocade, double face, ...). Malheureusement, je l'ai toujours trouvé relativement limité dans les manipulations possibles une fois l'enfilage des cartes choisi.

Par exemple, on est obligé de cliquer X fois sur avant/arrière pour faire apparaître un motif dont l'aspect est la conséquence directe de l'enfilage choisi. Certes, il est possible de "dessiner" son galon en modifiant les "picks" (NB : je n'ai toujours pas trouvé de traduction satisfaisante pour ce mot) un à un, mais dans ce cas, seule la couleur peut être changée, en aucun cas la forme. A ces limitations s'ajoutent quelques problèmes d'interfaçage parfois peu ergonomique.

Prenant mon courage à deux mains, je me suis donc lancé dans la réalisation d'un logiciel qui puisse palier les "défauts" de GTT en prenant une approche relativement différente : Carto'magic permet réellement de dessiner son galon, sans se préoccuper (trop) de l'enfilage. La magie des mathématiques combinatoires fait que le logiciel trouve les solutions possibles et propose la meilleure, ou disons celle qui impose le moins de manipulations pénibles (à savoir inverser les cartes et faire des temps morts). Qui plus est, de nombreux outils de copie, échange, inversion, rotation, ... sont à disposition pour créer en quelques clics des magnifiques galons. Encore mieux, carto'magic permet de modifier librement le montage en S ou Z de ses cartes sans que cela change le motif du galon : seul l'enfilage change. Enfin, cerise sur le gâteau, le logiciel permet de changer librement le type de numérotation des cartes : dans le sens horaire ou anti-horaire, mais aussi le sens de numérotation sur le diagramme d'enfilage.

Lors des premiers essais, vous aurez certainement l'impression que Carto'magic se base sur une logique différente de celle que l'on a lors du tissage. Vous aurez donc peut être du mal, au début, à créer un motif de galon. Vous vous enerverez sans doute quelques fois en inversant un pick, provoquant ainsi la recoloration de ceux au-dessus et dessous. En fait, le logiciel suit exactement la logique du tissasge, dictant le résultat d'une suite de mouvements de cartes,. En revanche, il fait abstraction des couleurs et des montages S/Z. Il se base donc sur la forme finale des "picks" ce que l'humain a du mal a "voir" sans les couleurs.

De ce fait, j'ai mis et mettrais des tutoriels à votre disposition pour donner des indications sur la meilleure façon d'exploiter carto'magic sans se tirer les cheveux.

2°/ Les fondements

Le tissage aux galons repose sur un principe extrêmement simple : faire tourner des cartes. Mais comme tout chose simple, elle recèle plein de surprises et de subtilités. Cette section est là pour démystifier la mécanique de ce type de tissage en énonçant quelques faits qui, de prime abord, ne semble pas forcément aller de soi.

2.1°/ Sur les motifs et leur création

Globalement, le fait de tourner les cartes (en avant ou arrière) après chaque passage du fil de trame va produire des trames composées de différentes formes géométriques. Même si on "oublie" de tourner certaines cartes une fois, on obtient les mêmes formes. En revanche, si on ne tourne pas certaines cartes pendant plusieurs trames, le résultat est incertain. Cela dit, il n'est pas "bon" pour la structure du galon de ne pas tourner.

Les 4 formes sont les suivantes :

4formes

Comme on le constate, ce sont soit des parallélogrammes, soit des triangles, et ce sont lesmêmes formes que l'on produit lorsque l'on utilise GTT. Dans la suite de l'article, j'utiliserai les acronyme PD, TD, PG et TG pour les désigner.

La question est : quels sont les mécanismes qui sont derrière la production de ces formes ? La réponse est finalement assez simple car cela ne dépend que de la façon d'enfiler les cartes (les fameux S et Z) et la séquence de rotation des cartes. Prenons un exemple : une carte à 4 trous dont les "numéros" (en fait les lettres) sont dans le sens anti-horaire [ NB : cet ordre est celui de GTT ] comme indiqué ci-dessous.

guntram-card

Quand on commence à tisser, les trous A et D sont vers le haut et le D est le plus proche du tisserand. D est donc du côté du galon et A du côté non tissé. Quand on tourne les cartes, on les visualise comme des roues de voiture. De ce fait, tourner les cartes vers l'avant signifierait que la voiture avance, et tourner en arrière, que la voiture recule. En partant de la position de départ et en tournant d'un quart de tour, on obtient donc les positions suivantes :

card-dplt-avar

Prenons maintenant pour hypothèse que la carte est montée en S, c'est-à-dire qu'ils passent de droite à gauche par les trous. Voici le résultat des formes produites à partir d'une suite donnée de rotations d'un quart de tour (F = forward = rotation avant, B = backward = rotation arrière) :

Montage en S
F,F,F,F PD,PD,PD,PD
B,B,B,B PG,PG,PG,PG
F,F,B,B PD,TD,PG,PG
B,B,F,F PG,TG,PD,PD
F,F,B,B,F,F,B,B PD,TD,PG,TG,PD,TD,PG,PG

 Si maintenant on monte la carte en Z, on obtient :

Montage en Z
F,F,F,F PG,PG,PG,PG
B,B,B,B PD,PD,PD,PD
F,F,B,B PG,TG,PD,PD
B,B,F,F PD,TD,PG,PG
F,F,B,B,F,F,B,B PG,TG,PD,TD,PG,TG,PD,PD

On constate qu'entre S et Z, il y a simplement inversion des lettres G et D. De plus, on remarque que l'apparition des triangles est due au fait de changer de sens de rotation. On en déduit une chose très importante :

Quand on monte ses cartes en S et pour une suite donnée de rotations, on peut TOUJOURS trouver un montage en Z et une suite de rotations qui donne EXACTEMENT le même résultat.

Et vice et versa !

Cette solution est de plus très simple à mettre en oeuvre. Il suffit de prendre sa carte montée en S et de "l'inverser en Z", c'est-à-dire faire tourner la carte sur son axe vertical afin d'obtenir des fils qui passent dans les trous de gauche à droite. Ensuite, il ne reste plus qu'à inverser les rotations prévues : avant devient arrière et arrière, avant. La même chose est possible pour passer de Z en S.

2.2°/ Et les couleurs ?

D'un point de vue humain, ce sont les couleurs qui font le motif. Mais en réalité, c'est le choix des séquences pour chaque carte qui détermine le motif. Le reste n'est que du coloriage. Cependant, ce coloriage ne peut être fait n'importe comment puisque les cartes ont un certain nombre de trous et qu'à chaque rotation, une seule de ces couleurs va "apparaître" sur le galon.

Pour connaître la succession de couleurs, il suffit de savoir deux choses :

  • quand on fait une rotation vers l'avant, c'est la couleur du trou en haut éloigné du tisserand qui apparaît.
  • quand on fait une rotation vers l'arrière, c'est la couleur du trou en haut près du tisserand qui apparaît.

Cela implique quelque chose de très important : lors d'un changement de rotation, on est OBLIGE d'avoir deux fois la même couleur. Ce qui veut dire que si l'on fait F,B,F,B,..., on obtient une chaîne d'une seule couleur, qui plus est constituée uniquement de triangles. C'est aussi pour cela que dans carto'magic, le fait d'inverser une forme peut conduire à recolorier celles qui se trouvent au dessus et/ou en dessous.

En combinant ces deux règles avec celles exposées dans la section précédente, il devient facile de connaître, à partir d'un montage donné des cartes, quelle suite de couleurs l'on va obtenir : c'est ce que fait GTT. Mais est-il possible de faire l'inverse, à savoir choisir une suite de couleurs sur les chaînes et deviner la montage des cartes ?

2.3°/ Divination

En fait, carto'magic ne lit pas dans les entrailles pour répondre à la question précédente. Il se base simplement sur un dénombrement de toutes les combinaisons possibles pour monter une carte de N trous avec P couleurs. Ensuite, il suffit de trouver quelles sont les combinaisons qui permettent d'obtenir la suite de couleur voulue, en fonction du mouvement des cartes. Par exemple, avec 3 couleurs (numérotées de 1 à 3) sur 4 trous, les combinaisons possibles sont en fait tous les anagrames de 1123, 1223, et 1233 (car il y a forcément une couleur en double). Je ne donne pas ici la formule permettant de calculer le nombre d'anagrames mais dans le cas présent, cela donne 36 combinaisons. Autant dire que cela ne prend que quelques micro-secondes pour tester toutes ces possibilités.

Pour déterminer le montage de chaque carte, Carto'magic fait donc ces tests chaque fois que l'on colorie une des formes de la grille de dessins, ou bien que l'on en inverse l'orientation (droite ou gauche). Malheureusement, si l'on colorie au hasard, on a de grandes chances de n'obtenir aucune solution valide, ce qui provoque l'apparition d'une bande grisée dans la partie qui représente le montage des cartes et la suite de rotations. Il faut donc un peu de pratique pour colorier correctement. Cela dit, certains galons (nommé anglo-saxons dans GTT) n'ont aucune solution possible sans faire intervenir des "temps mort".

Un temps mort est simplement un moment où une carte ne tourne pas. La couleur est donc celle de la dernière rotation effectuée. On peut ainsi "tricher" et obtenir des séquences normalement impossibles. Par exemple, en mettant une couleur par trou (par exemple A = Rouge, B = Vert, C = Bleu, D = Jaune), il es strictement impossible d'obtenir une suite du genre J,J,B,B,V,V,R,R sans faire de temps morts. En revanche, en avançant une fois sur deux, on obtient naturellement cette séquence.

Il va sans dire que carto'magic peut deviner où se trouve ces temps morts mais en étant très vite limité par la taille de la séquence. En fait, il y a 3*2^(taille_séquence) possibilités. Cela ne vous parle pas ? Alors dites-vous que si la séquence fait 20 de long, cela représente 3 millions de possibilités, mais si on passe à 32, cela fait presque 13 milliards. Or, il faut bien stocker en mémoire ces possibilités et il n'y a pas beaucoup d'ordinateurs personnels qui ont 13Go de mémoire vive. Sans parler du temps de tester toutes ces possibilités avec les combinaisons de montage de cartes. C'est pourquoi Carto'magic limite la détection des temps morts aux séquence inférieures à 20 de long.

Mais si on a plus ? Pas de problème, la détection n'est pas automatique mais peut quand même être faite à la demande (avec des limitations sur le nombre de temps morts maximum).

 to be continued ...

Hervaldsheim Informatique Logiciels Carto'magic Carto'magic : fondements et objectifs