En Metapost, un point est de type pair.
Ainsi, pour définir les points A, B, C et D, on écrira la ligne :
pair A,B,C,D;
Pour définir leurs coordonnées, on taper par exemple :
A:=(0,0); B:=(5u,0); C:=0.5[A,B]; D:=(A+2B)/3;
Remarquez que les coordonnées sont données comme des multiples de l’unité u qui est définie en début de figure.
Pour les dessiner, il y a plusieurs marque possibles que l’on définit par la commande marque_p:= »type de marque » où le type de marque est à choisir parmi :
– « rien » : valeur par défaut ;
– « plein » : disque noir ;
– « creux » : cercle ;
– « croix ».
Pour tracer le point A, on a le choix entre le dessiner uniquement, ou le dessiner en le nommant. Les commandes sont :
– pointe(A);
– nomme.pos(A);
– label.pos(btex $A$ etex,A);
posest à remplacer par les attributs de position de Metapost :
– top : en haut ;
– bot : en bas ;
– rt : à droite ;
– lft : à gauche ;
– urt : en haut à droite ;
– ulft : en haut à gauche
– lrt : en bas à droite ;
– llft : en bas à gauche.
Voici un exemple d’utilisation.
input geometriesyr16.mp ; %------------------------------------------------------------------------ % Exercice 1 %------------------------------------------------------------------------ u:=1cm; figure (-8u,-8u,10u,8u); pair A,B,C,D,E,F,G,H,O; A:=(0,0); B:=(6u,0); C:=(6u,4u); D:=(0,4u); E:=0.5[A,B]; F:=0.5[B,C]; G:=0.5[C,D]; H:=0.5[D,A]; O:=0.5[A,C]; marque_p:="plein"; nomme.llft(A); nomme.lrt(B); nomme.urt(C); nomme.ulft(D); marque_p:="creux"; nomme.bot(E); nomme.top(G); marque_p:="croix"; nomme.rt(F); nomme.lft(H); pointe(O); fin; %----------------------------------------------------------------------- %----------------------------------------------------------------------- end ;