![]()
![]()
![]()
![]()
![]()
Next: Réalisation Up: Grapheur Previous: Grapheur   Contents   Index
Introduction La bibliothèque graphique d'OpenScheme est un ensemble de fonctions primitives gérant l'affichage graphique. Cette bibliothèque de fonction est disponible de manière identique pour les environnements issus d'Unix et Windows. Le même programme tournera de manière identique sur tous les systèmes d'exploitation supportés par OpenScheme.
Les lecteurs souhaitant programmer avec OpenScheme auront intérêt à utiliser la version de débogage de l'environnement, permettant de visualiser les variables, de poser des points d'arrêts et de visiter la pile des appels de fonctions. Nous rappelons qu'OpenScheme est le seul environnement Scheme proposant un débogage au niveau expressions.
Le programme que nous décrivons ici est un cas pratique d'utilisation du langage. Le grapheur est un logiciel permettant de tracer des courbes dans une fenêtre en donnant un ou plusieurs producteurs qui sont des fonctions numériques. Le grapheur proposé ici est très simple et ne propose qu'un nombre limité d'options. Voici un exemple d'utilisation du grapheur :
Osm> (graph ; mode de tracé = dot ou line 'line ; x initial 0 ; x final (* 2 3.14116) ; pas pour x 0.1 ; producteurs sin cos) => #unspecifiedLa fonction
graphpossède comme premier paramètre le type de tracé souhaité ; le choix est soit le symboledotpour un tracé en point à point, soitlinepour un tracé en ligne. D'autres modes de tracé peuvent être ajoutés, comme le tracé en rectangles ou en camembert. Ensuite, on spécifie la page des valeurs de x en donnant la valeur initiale, la valeur finale et le pas. Ces valeurs peuvent être positives, négatives, entières ou réelles. Les producteurs sont invoqués pour les différentes valeurs de x appartenant à la plage définie. Le nombre de producteur est quelconque. Un producteur est une fonction ayant comme argument une valeur de x, et retournant la valeur de y correspondante. La fonction peut être aussi complexe que nécessaire.Dans l'exemple, les producteurs sont les fonctions standards
sin(sinus) etcos(cosinus) de Scheme. La fenêtre affichée par le grapheur est montrée en figure 17.1.
Pour tracer une fonction d'équation y=x, nous invoquons la fonction
graphcomme cela :Osm> (graph ; mode de tracé = dot ou line 'line ; x initial 0 ; x final (* 2 3.14116) ; pas pour x 0.1 ; producteurs (lambda (x) x)) => #unspecifiedNous pouvons combiner toutes sortes de fonctions, à la seule condition que le producteur soit une fonction à un argument retournant une valeur numérique. Si nous voulons tracer la fonction f(x)=3.x2+5.x-3, nous appelons
graphavec comme producteur la fonction :Osm> (graph ; mode de tracé = dot ou line 'line ; x initial 0 ; x final (* 2 3.14116) ; pas pour x 0.1 ; producteurs (lambda (x) (+ (* 3 x x) (* 5 x) -3))) => #unspecified
![]()
![]()
![]()
![]()
![]()
Next: Réalisation Up: Grapheur Previous: Grapheur   Contents   Index © 1993 to 2001 Erian Concept