UNE SÉQUENCE COMPLÈTE
Lancement du programme
Sous Windows cliquer sur anyflo_no_gra.exe
Le programme se lance et imprime quelques messages.
L´interpreteur est alors prêt et attend une commande.
Premières manipulations
Taper:
help;
La liste des commandes est affichée.
Taper
help cos;
Imprime la description de la commande cos.
Taper
$help(0)cos;
Imprime le contenu du fichier de cos.0.htm
Taper
$help(1)vol;
Imprime le contenu du fichier vol.1.htm
Une autre méthode consiste à cliquer sur le fichier
AIDE_ANYFLO.htm (aide sur la machine), ou
AIDE_ANYFLO_WEB.htm (aide en ligne: nécessite une connexion internet),
qui donnent accès au help en hypertexte.
Taper:
demo for;
La démonstration de la commande for est lancée
Taper:
bye;
Le message "A bientot!..." apparait et le programme est stoppé
CALCULS EN INTERACTIF
Calculs
Variables
Tableaux
Indices
Pointeurs
Calculs
Taper:
1+2*3;
Rien ne se passe
Taper:
print(1+2*3);
Le résultat 7 apparait
Taper:
$(1+2*3);
Le résultat 7 apparait: ´$´ est l´abréviation de ´print´
Taper:
$1+2*3;
Le résultat 7 apparait: on peut oublier des parenthèses s´il n´y
a pas d´ambiguité.
Les variables
Taper:
x=1+2*3;
Rien ne se passe
Taper:
$x;
Le résultat 7 apparait: la variable x a été
initialisée à la valeur 7
Taper:
x=1,2,3,4,5;$x;
Le résultat (1.0,2.0,3.0,4.0,5.0) apparait:
Une variable peut aussi être un tableau.
Taper:
x=[1,5];$x;
Le résultat (1.0,2.0,3.0,4.0,5.0) apparait:
Une suite de valeurs consécutives peut être définie par ses bornes.
Exercices:
1) x=[5,1];$x;
2) x=[10,100,10];$x;
Taper:
x="toto";$x;
Le résultat toto apparait:
Une variable peut aussi être une chaine de caracteres.
3) Taper:
x=[1,5],"ABCD",-1;
Puis
$x;
Le résultat (1.2,2.0,3.0,4.0,5.0)(ABCD)(-1.0) apparait:
Une variable peut être de type hybride.
Taper:
x=1;y=2;z=3;$x+y*z;
Le résultat 7 apparait.
Tableaux
Taper:
x=[1,5];y=[6,10];$x+y;
Le résultat (7.0,9.0,11.0,13.0,15.0) apparait:
Les calculs sur les nombres sont étendus aux tableaux.
Taper:
$x,y;
Le résultat (1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0) apparait:
La virgule est l´opérateur de concatenation.
Exercices:
1) x=[1,5];$1+2*x;
2) x=[1,5];y=[6,12];$x+2*y;
3) $x,1+2*y;
Indices
Taper:
x=[1,12];$x[0];
Le résultat 1 apparait:
x[i] retourne l´élément de rang i de la variable x.
Remarque:
Les indices commencent à 0, ainsi x[3] retourne 4 et x[12] provoque
une erreur (12: indice illegal).
Exercices:
1) x=[1,12];$x[0,4];
2) $x[4,0];
3) x[0,4]=[14,10];$x;
4) x=[1,12];x[0,5]=x[11,6];$x;
Taper:
edit x;
La variable x est imprimée comme liste de points 3D:
0: 1.0 2.0 3.0
1: 4.0 5.0 6.0
2: 7.0 8.0 9.0
3: 10.0 11.0 12.0
Taper:
$x{0};
Le résultat (1.0,2.0,3.0) apparait:
x{i};
retourne les composantes du point de rang i de la variable x.
Remarque:
Les indices commencent à 0, ainsi x{2};
retourne (7.0,8.0,9.0) et x{4};
provoque une erreur (4: indice illégal)
Exercices:
1) x=[1,12];$x{0,3};
2) $x{3,0};
3) x{0,2}=x{3,2};$x;
4) x=[1,12];x{0,4}=x{4,0};$x;
Pointeurs
Taper:
t=[0,5];p=@t;$p;
p est l´adresse du tableau t.
Taper:
$p[2];
produit 2 qui est l´élément numéro 2 de t.
Taper:
edit(p[0,5]);
produit:
0.0 1.0 2.0
3.0 4.0 5.0
UN PEU DE GRAPHIQUE 2D
Cliquer sur anyflo_video.exe, une fenêtre graphic de taille vidéo
s´ouvre, elle peut cacher la fenêtre texte,
pour récuperer celle-ci enfoncer simultanement les touches Alt et Tab
cliquer sur l´icone anyflo.exe.
Taper:
screen;
L´écran est effacé en bleu (par défaut couleur du fond).
Taper:
screen 1,.7,.5;
L´écran est effacé en jaune orange: les couleurs se définissent par
leurs composantes (rouge,vert,bleu) normalisées entre 0.0 et 1.0
Taper:
screen;
L´écran est effacé en bleu: la couleur du fond n´a pas été changée.
Taper:
back 1;screen;
L´écran est effacé en rouge: la couleur du fond a été changée.
Taper:
x=arc 100,0,2*PI,12;
x est la ligne polygonale régulière de centre l´origine, de rayon 100,
d´angle un tour et de 12 points.
edit x;
imprime les coordonnées de cette ligne polygonale
screen;displ line(x);
Efface l´écran et affiche la ligne polygonale x
Taper:
segment(0,0,200,100)col(1,1,1);
Un segment blanc joint les points (0,0) et (200,100). Le centre du repère
de l´écran est son centre, l´axe des x est dirigé vers la droite et l´axe des
y est dirigé vers le bas.
Taper:
segment(0,0,200,-100)col(0,1,0)cut(3,3);
Un segment vert joint en pointillé les points (0,0) et (200,-100).
Taper:
frame(-100,-100,100,100)col 0,1;
Un cadre vert est affiché.
Taper:
rectangle(0,0,50,50)col 0,1,1;
Un rectangle plein de couleur cyan est affiché
Exercices:
1) screen 0;rectangle(0,0,50,50)col(1);
2) screen 0,0,1;rectangle(50,50,-50,-50)col(1,1,1);
3) Taper:
demo pixel;
demo segment;
demo frame;
demo rectangle;
demo disk;
demo text;
UN PEU DE GRAPHIQUE 3D
Cliquer sur anyflo_see.exe, une fenêtre graphic de taille maximum
s´ouvre, ainsi qu´une fenêtre (sur l´image) permettant de taper du texte.
Taper:
ini ini vol;
Tous les flags sont réinitialisés et tous les volumes détruits.
Taper:
ball(1);
Un volume de type ball est créé par défaut (rayon de 100, 6 sections en x, 3
sections en y, 18 facettes et 24 sommets). Ces paramètres sont visualisés par la commande:
edit vol(1)
Taper:
screen;displ vol
L´écran est effacé et la boule est affichée en fil de fer.
Taper:
ball(2)dim(200)secy(12);screen;displ vol(2);
Une boule de rayon 200, 24 sections en x, 12 sections en y, 338 facettes et 364 sommets, est
créée, puis affichée.
Taper:
col vol(2)=1;yes illum;screen;displ vol(2);
Le volume 2 prend la couleur rouge et est affiché en plein (mode flat).
Taper:
illum vol(2)=2,1,.1,.1,0;screen;displ vol(2)
Le volume 2 est affiché en plein avec lissage de Gouraud.