### 9.3.5 Les commandes d’affichage : `display color affichage couleur`

`affichage couleur` peut avoir comme paramètre différentes valeurs, reliées par `+`, permettant de gérer les attributs des graphiques à venir d’une ligne de commandes normale (la commande est alors globale) ou de gérer les attributs d’un objet graphique ou d’une légende (la commande est alors locale).
Attention
`affichage(0)` remet l’affichage par défaut : couleur noire, figure non pleine, les points ont des légendes...

#### Pour ne pas afficher le nom de l’objet

`hidden_name` est une valeur de paramètre de la commande `affichage` qui permet de ne pas afficher le nom de l’objet. On tape (ici la commande `affichage` est locale au point `A`) :

`affichage(A:=point(1+i),hidden_name);B:=point(-1); D:=droite(A,B)`

On obtient :

`A est dessiné sans son nom et B et la droite A,B sont dessinés avec leur nom`

On tape (ici la commande `affichage` est locale):

`A:=point(1+i);B:=point(-1);affichage(D:=droite(A,B),hidden_name)`

On obtient :

`Les points A et B et leurs noms et la droite A,B dessinée sans son nom`

Attention NE PAS mettre `affichage(hidden_name)` comme commande globale car après, aucun nom sera visible, et seule la commande `affichage(0)` remettra l’affichage par défaut.

#### Mettre de la couleur

Un entier entre 0 et 255 (ou un nom de couleur) représente une couleur de la palette des couleurs que l’on peut voir avec le bouton des couleurs de l’écran de géométrie et, un entier entre 256 et 381 représente les couleurs de l’arc en ciel. Pour voir les couleurs de l’arc en ciel il suffit d’exécuter le programme suivant :

    arcenciel():={
    local j,C;
    C:=[];
    for (j:=256;j<382;j++){
    C:=append(C,carre(j,j+1,couleur=j+rempli));
    }
    C;
    }

Pour voir l’arc en ciel, on tape `a:=arcenciel():;`, puis `a` pour voir toutes les couleurs (le numéro d’une couleur est alors égal à son abscisse) ou par exemple `a[300-256]` pour voir la couleur de numéro 300.

Autre méthode, on tape :
`ciel():={ local j; for (j:=0;j<126;j++) carre(j,(j+1),affichage=rempli+256+j);}` puis,
`ClrGraph;ciel()` et on ouvre la fenêtre `DispG` avec le menu `Cfg` sous menu `Montrer` puis `DispG`. On regle `cfg` de cette fenêtre en prenant `WX-=-1`, `WX+=127`, `WY-=0` et `WY+=1` et on voit ainsi les 126 couleurs de l’arc en ciel !

La commande `couleur` ou `affichage` avec comme paramètre un entier entre 0 et 381 (ou un nom de couleur) permet de tracer un objet géométrique avec la couleur spécifiée.
`couleur` ou `affichage` a un argument (resp deux arguments) : le nom de la couleur ou l’entier désignant cette couleur (noir=0, rouge=1, vert=2, jaune=3, bleu=4) (resp l’objet géométrique ou une légende et le nom de la couleur ou le numéro de la couleur).
Attention
Le nom `couleur` ou `affichage` ou display ou `color` peut aussi servir de paramètre optionnel d’une commande graphique. Dans ce cas, le nom du paramètre optionnel (ici `couleur` ou `affichage` ou `color`) est suivi de `=` puis de la valeur de l’entier désignant la couleur, est le paramètre que l’on passe comme argument supplémentaire dans les commandes graphiques.
On tape :

`couleur(segment(0,1+i),rouge)`

Ou on tape :

`segment(0,1+i,couleur=rouge)`

On obtient :

`Le segment(0,1+i) est dessiné en rouge`

On tape :

`couleur(point(1+i),2)`

Ou on tape :

`point(1+i, couleur=2)`

On obtient :

`Le point 1+i apparait avec une croix (x) verte`

On tape :

`affichage(rouge)`

On obtient :

`après cette instruction, les dessins resultant de commandes graphiques se feront en rouge`

On tape :

`couleur(legende(1+i,"AA"),rouge)`

Ou on tape :

`legende(1+i,"AA",couleur=rouge)`

On obtient :

`Le point(1+i) dessiné en rouge a comme légende rouge AA`

#### Pour dessiner une figure pleine

`rempli` ou `filled` est une valeur de paramètre de la commande `affichage` qui permet d e dessiner une figure pleine. On tape (ici la commande `affichage` est globale) :

`affichage(rempli);carre(0,1+i);triangle(-1,0,-i);`

On obtient :

`le carre(0,1+i) plein et le triangle(-1,0,-i) plein`

#### Les différents affichages de points

`couleur` ou `affichage` peut avoir comme argument la forme de la représentation des points 2-d à l’affichage. Ces formes peuvent avoir des traits plus ou moins épais selon la valeur de `n` de `point_width_n`.
La représentation des points 3-d a comme forme un carré (c’est `point_carre`) plus ou moins gros selon la valeur de `n` de `point_width_n`.
Les différentes options sont :

- `point_losange` ou `rhombus_point` pour représenter un point par un petit losange (◇),
- `point_carre` ou `square_point` pour représenter un point par un petit carré (□),
- `point_croix` ou `cross_point` pour représenter un point par une croix (×) c’est la représentation par défaut,
- `point_etoile` ou `star_point` pour représenter un point par une étoile (*),
- `point_plus` ou `plus_point` pour représenter un point par le signe plus (+),
- `point_point` pour représenter un point par un point (·).
- `point_triangle` ou `triangle_point` pour représenter un point par un triangle (△),
- `point_invisible` ou `invisible_point` pour ne pas représenter un point.

Les différentes épaisseurs sont :
`point_width_1` ou `epaisseur_point_1`,`point_width_2` ou `epaisseur_point_2`...`point_width_8` ou `epaisseur_point_8`
Attention
Le nom `couleur` ou `color` ou `affichage` est aussi le nom d’un paramètre que l’on passe comme argument supplémentaire dans les commandes géométriques lorsqu’il est suivi de `=`, puis de la valeur d’un attribut puis de `+`, puis de la valeur d’un autre attribut etc...
On tape :

`couleur(point(1+i),rouge+point_carre+point_width_3)`

Ou on tape :

`point(1+i,affichage=rouge+point_carre+point_width_3)`

On obtient :

`Le point (1+i) est dessiné en rouge à l’aide d’un petit carré`

On tape :

`affichage(point_carre)`

On obtient :

`après cette instruction, les points seront dessinés à l’aide d’un petit carré`

#### Les différents formes d’affichage des lignes

`couleur` ou `affichage` peut avoir comme argument la forme de la représentation des lignes à l’affichage.
Les différentes options sont :

- `solid_line` ou `ligne_trait_plein` est un argument de `couleur` et permet de dessiner une ligne en trait plein (c’est la représentation par défaut),
- `dash_line` ou `ligne_tiret` est un argument de `couleur` et permet de dessiner une ligne en pointillé.
- `dashdot_line` ou `ligne_tiret_point` est un argument de `couleur` et permet de dessiner une ligne avec un tiret et un point,
- `dashdotdot_line` ou `ligne_tiret_pointpoint` est un argument de `couleur` et permet de dessiner une ligne avec un tiret et deux points,
- `cap_flat_line` ou `ligne_chapeau_plat` est un argument de `couleur` et permet de dessiner une ligne plate,
- `cap_round_line` ou `ligne_chapeau_rond` est un argument de `couleur` et permet de dessiner une ligne tubulaire,
- `cap_square_line` ou `ligne_chapeau_carre` est un argument de `couleur` et permet de dessiner une ligne à section carr’ee.

On tape :

`couleur(segment(0,1+i),rouge+dash_line)`

On obtient :

`Le segment (0,1+i) est dessiné en rouge en pointillé`

#### Les différentes épaisseurs d’affichage des lignes

`couleur` ou `affichage` peut avoir comme argument l’épaisseur de la représentation des lignes à l’affichage.
Les différentes options d’épaisseurs sont :
`line_width_1`, `line_wdith_2`,...`line_width_8` ou
`epaisseur_ligne_1`, `epaisseur_ligne_2`,...`epaisseur_ligne_8`.
`line_width_n` est un argument de `couleur` ou `affichage` et permet de dessiner une ligne plus ou moins epaisse.
On tape :

`couleur(droite(y=1),rouge+line_width_1)`

On obtient :

`La droite (y=1) est dessinée en rouge et en trait fin`

On tape :

`couleur(droite(y=2),rouge+line_width_7)`

On obtient :

`La droite (y=2) est dessinée en rouge et en trait très épais`