home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-05-04 | 44.4 KB | 1,073 lines |
- JcGraph
- (Demo v0.903 sur FredFish 671)
- (Demo v1.100 sur FredFish 760)
- Copyright 1992, Jean-Christophe Clément
- Internet: clemj00@dmi.usherb.ca
-
- Amiga, AmigaDos, WorkBench are a trademark of Commodore-Amiga Inc.
- PostScript is a trademark of Adobe system corp.
- Professionnal Page is a trademark of Gold Disk Inc.
- PageStream is a trademark of Soft-Logik corp.
- Saxon Publisher is a trademark of Saxon Industries Inc.
- AegisDraw2000 is a trademark of Oxxi/Aegis Inc.
- Advantage is a trademark of Gold Disk Inc.
- File requester: Copyright 1990 Khalid Aldosery.
- Systeme HyperTexte utilisant HyperText de Dominic Giampaolo.
-
- ATTENTION:
- Ce logiciel est librement distribuable mais est toujours sous la
- protection du copyright a son auteur: Jean-Christophe Clement.
-
- Table des matières:
- -------------------
-
- 0.Introduction.
- 1.Configuration matérielle et logicielle requise.
- 2.Installation de JcGraph.
- 3.Exemple de création d'un graphique, étape par étape.
- 4.Sommaire des options de menu.
- 5.Fenêtre de contrôle.
- 6.Format de fichier en entrée de JcGraph.
- 7.Format de fichier en sortie de JcGraph.
- 8.Modification du graphique.
- 9.Equivalents clavier.
- 10.Sélécteur de palette de couleurs.
- 11.Options de TOOLTYPE et ligne de commande.
- 12.Interface ARexx.
- 13.Format des types de graphiques.
- 14.Indices sur les améliorations prevues pour JcGraph.
- 15.Histoire de JcGraph.
-
- 0.Introduction:
- ---------------
- a.Bref aperçu.
-
- Spécialisé dans les graphes d'affaires, JcGraph pourra, entre autres,
- représenter vos données sous formes de tartes,barres,lignes, barres 3D, plans,
- piles, etc...et permet la rotation en X, Y, Z autour du graphe créé ainsi que
- la sortie aux formats: PostScript Encapsulé, Geo 3D, AegisDraw2000 et
- IFF ILBM.
-
- b.Pourquoi avoir créé JcGraph ?
-
- Parce qu'après avoir tenté de trouver un programme commercial,
- shareware ou du domaine public qui ferait des graphiques de présentation de
- qualité comparable à ce qui se fait sur les compatibles IBM ou sur Macintosh,
- j'en suis venu à la conclusion qu'un tel programme n'existait pas pour
- l'Amiga. Et considérant l'orientation "MultiMédia" de notre machine, il est
- temps que ca change.
-
- c.La philosophie derrière JcGraph.
-
- Le but premier de JcGraph est de créer des graphiques de présentation
- d'affaire qui aient le plus grand impact visuel possible en un minimum
- d'efforts.
- Je me suis donc posé la question suivante: "Qu'est ce qui est le plus
- difficile à réaliser, sans outil autre qu'un programme de dessin, lors de la
- réalisation de graphiques d'affaire ?". La réponse est assez simple:
- Le graphique lui-même! En effet, une fois que le graphe est réalisé, il est
- très simple de rajouter un fond de couleurs graduées, des titres et
- annotations, et cela, avec n'importe quel programme de traitement d'images
- alors que le graphe lui-même (d'autant plus s'il est en perspective) peut
- exiger de nombreuses heures.
- Donc, JcGraph reflète cette philosophie de travail par la variété et la
- qualité des graphes produits et la flexibilité de ses formats en sortie qui
- accomoderont les besoins de la plupart de ses utilisateurs en permettant
- l'ajout de détails dans des programmes spécialisés.
-
- d. Conformité au standard de programmation de l'interface.
-
- J'ai essayé de me conformer le plus possible aux standards promus par
- Commodore. Compte tenu des ressources limitées que j'avais à investir dans
- JcGraph, je crois que l'objectif a été atteint.
-
- 1.Configuration matérielle et logicielle recquise:
- --------------------------------------------------
-
- Minimale:
- N'importe quel modèle d'Amiga.
- 1meg de memoire RAM.
- WorkBench 1.3 et plus.
- 1 lecteur de disquettes.
-
- Recommandé:
- Amiga accéléré.
- 1.5+ meg RAM.
- WorkBench 2.0+.
- Disque-Rigide.
-
- JcGraph à été testé et jugé complètement fonctionnel sur les machines
- suivantes:
- -Amiga 500, 1 disque-souple, 1 meg RAM, WB 1.3, 68000.
- -Amiga 2000HD, 52 Megs HD, 3 megs RAM, WB 2.0, 68000.
- -Amiga 3000/16, 50 Megs HD, 2 megs RAM, WB 2.0, 68030/16Mhz
- -J'ai remarqué certains problèmes de fonctionnements avec les nouvelles
- puces AGA en 256 couleurs, veuillez donc prendre pour acquit que ces
- modes ne sont pas supportés.
-
- 2.Installation de JcGraph.
- --------------------------
-
- A-Assignation logique requise:
- ------------------------------
-
- Par exemple: Si vous copiez JcGraph dans le répertoire "Work:MyJcGraph",
- ajoutez cette ligne à votre fichier "s:startup-sequence":
- "assign JcGraph: Work:MyJcGraph".
-
- B-Répertoire et fichier requis (après avoir fait l'étape A)
- -----------------------------------------------------------
- libs:icon.library :Sur le WB 1.3 (en ROM sous 2.0).
- libs:kd_freq.library :Librairie pour les requêtes de fichier.
- libs:IffParse.library ;Librairie pour les fichiers IFF ILBM.
- JcGraph:Graphtype :Répertoire des types de graphes.
- JcGraph:Template :Répertoire des "Templates".
- JcGraph:HelpFile :Répertoire des fichiers d'aide.
- JcGraph:Rexx :Répertoire des fichiers ARexx.
- JcGraph:HelpFile/ht :Programme d'aide en ligne.
- JcGraph:JcGraph :Le programme principal.
-
- Si vous ne l'avez pas encore fait, allez dans le répertoire jcgraph:libs et
- faites la commande "copy #?.library libs". Voilà, tout est prêt. Il est à
- noter que je ne peux (pour des raisons légales) distribuer la librairie
- "IffParse.library" et vous devrez donc vous la procurer autrement.
-
- 3.Exemple de création d'un graphique, étape par étape:
- ------------------------------------------------------
- Nous allons créer un graphique fait de 3 rangées de 3 plans chacune et
- en faire la sortie au format AegisDraw2000.
-
- La première étape est la création des données. Pour ce faire, utilisez
- votre éditeur de textes préféré. Il est important de noter que celui-ci doit
- pouvoir produire un fichier exempt de tous caractères spéciaux d'édition qui
- ne seraient pas reconnus par JcGraph (ASCII international).
- Après avoir chargé votre éditeur, entrez tout de suite "1002," (les
- guillemets n'étant que des délimiteurs, ne les incluez pas. Cette séquence
- permet à JcGraph d'identifier le fichier comme étant bel et bien un fichier
- de données qui lui est compréhensible. Toutes les entréed doivent êtres
- séparées par des virgules.
- Ensuite, entrez le nombre de colonnes de données que contiendra votre
- fichier, dans notre exemple "3". Faites la même chose pour le nombre de
- lignes. Ensuite, vient un chiffre qui sert à déterminer l'espace séparant
- chaque cote de l'échelle des valeurs; par exemple, si vos données varient
- entre 0 à 100, une entrée de 25 résulterait en une échelle de cotes
- contenant les valeurs "0","25","50","75" et "100". Ce chiffre utilise la
- même unité de mesure que les données elles-mêmes. Le chiffre qui suivra
- indiquera (par un nombre en virgule flottante), la valeur par laquelle
- chaque cote doit être multipliée; par exemple, si vous entrez "1.24",
- chaque cote sera multipliée par 1.24. Ceci permet d'avoir accès à des
- valeurs en virgule flottante sans changer la représentation des données.
- Notez que seulement 3 décimales sont conservées après le point pour
- l'instant et qu'une valeur de 0 permet l'affichage des cotes sous la forme
- entière (i.e. pas de point décimal).
- Par la suite, vous entrez les valeurs de vos données. Dans l'exemple,
- nous avons décidé de produire un graphique de 3 lignes par 3 colonnes, il y
- aura donc, 9 valeurs consécutives (N.B. elles peuvent être sur la même ligne
- si vous le désirez).
- Les trois valeurs qui suivent sont des textes qui seront les
- identificateurs de vos colonnes (3 colonnes = toujours 3 identificateurs,
- même s'ils sont vides). Même procédure pour les 3 lignes avec trois nouveaux
- textes qui représenteront cette fois le type de produit de la ligne. Il est
- à noter que l'orientation est toujours la même: des ensembles de valeurs
- différentes sont sur des lignes différentes alors que leur variation est
- représentée en colonne.
-
- Voici le résultat de l'exemple créé:
-
- 1002,
- 3,3,10,0,
- 10,20,30,
- 50,60,60,
- 15,32,17,
- Jan,Fev,Mar,
- Gaz,Oil,Fer,
-
- Sauvegardez ce résultat sous le nom "test3X3.asc".
-
- La seconde étape consiste à charger les données. Pour ce faire, chargez
- JcGraph en mémoire. Il est à noter qu'une fois JcGraph démarré, il peut
- s'écouler 3 à 5 secondes avant que les fenêtres de contrôle apparaîssent;
- ceci est normal.
- Maintenant, allez choisir l'option "Open..." sous le menu "Project" (Ou
- tenez simplement enfoncées les touches Amiga de droite et "O" simultanément.
- IMPORTANT: Il est à noter que JcGraph n'accepte les commandes que depuis
- la fenêtre d'interface (celle avec les différents boutons), il est donc
- nécessaire de la sélectionner (si ce n'est déjà fait) avant de tenter
- d'exécuter quelqu'opération que ce soit qui nécéssite le travail sur le
- graphique en cours. Il faut aussi noter qui la fenêtre d'interface affiche
- la mention "No Data" dans sa barre titre lorsqu'aucune donnée n'a été chargée
- en mémoire.
- Une boîte de requête de fichier ayant la mention "Choose an ASCII data
- file" apparaîtra alors à votre écran. Son utilisation n'est pas décrite ici
- mais vous pouvez retrouver cette information en appuyant la touche HELP ou
- SHIFT-F1 lorsqu'elle est active.
- Retrouvez et sélectionnez le fichier "test3X3.asc" et sélectionnez
- ensuite l'option "Open" au bas de la fenêtre. Le pointeur de la souris ce
- transformera alors en horlogge pendant le chargement. Après un temps très
- court, il reviendra à son état inital, vous indiquant ainsi que les données
- ont été correctement chargées (La barre de titre de la fenêtre d'interface
- devrait alors indiquer le nom de votre fichier).
- La fenêtre titrée "Preview" nous donne un apperçu en fil de fer de ce
- que sera notre graphique une fois terminé. Bien entendu, la version finale
- ne sera pas transparente mais pour fin de rapidité d'affichage, cette
- représentation est nécéssaire.
- Comme vous pouvez le constater dans la fenêtre "Preview", le type de
- graphique par défaut représente les données sous forme de blocs
- tri-dimensionnels. Choisissons donc maintenant un type de graphique
- différent pour illustrer le processus de changement de type. Allez choisir
- l'option "Load..." sous le menu "GraphType" (Amiga+T). Un autre sélecteur
- de fichier apparaîtra à l'écran. Si tout va bien, une liste de fichier se
- terminant par l'extension ".grf" devrait être affichée à l'écran. Si aucune
- entrée sélectionnable n'apparaît dans la fenêtre, vous avez probablement
- fait une erreur en installant JcGraph, référez-vous alors à la section 2.
- Vous pouvez alors choisir le type de graphique qui vous convient. Pour
- fin d'exemple, selectionnez le fichier "3D_BrokenPlanes.grf" et poussez
- ensuite le bouton "Load". Après un petit moment d'attente, la fenêtre
- titrée "Preview" devrait affiché un graphique fait de plans
- tri-dimmensionnels.
- La perspective actuelle de l'image ne permet pas très bien d'apprécier
- l'effet 3D de la représentation graphique. Pour l'améliorer, nous
- utiliserons une des fonctions les plus puissantes de JcGraph, la rotation.
- Regardez maintenant dans la fenêtre d'interface; elle est divisée en 2
- sections importantes:
- 1.à gauche, il y a deux boutons annotés "Undo" et "Render". Nous y
- reviendrons plus loin.
- 2.à droite, il y a 4 rangées de boutons, celles-ci contrôlent les valeurs
- de rotation de perspective de la représentation de votre graphique.
- Rangée 1: Rotation autour de l'axe des X.
- Rangée 2: Rotation autour de l'axe des Y.
- Rangée 3: Rotation autour de l'axe des Z.
- Rangée 4: Contrôle de la perspective.
-
- Pour fin d'exemple, nous ne nous étendrons pas plus sur ces
- fonctionnalités pour le moment (qui sont décrites dans la section 5). Pour
- le moment, selectionnez simplement le cadre dans lequel est écrit le chiffre
- 0 à la rangée 1. Entrez au clavier la valeur "-30". Appuyez sur la touche
- "Return". Sélectionnez ensuite le chiffre 0 à la rangée 2. Entrez au clavier
- la valeur "30". Appuyez sur la touche "Return". Vous pouvez dès maintenant
- voir dans la fenêtre "Preview", les changements effectués à la représentation
- de votre graphique. L'effet produit est beaucoup plus dynamique.
- Maintenant, vous pourriez désirer admirer le résultat final. Vous n'avez
- qu'à appuyer sur le bouton "Render" (Rendu final) de la fenêtre d'interface.
- Le pointeur se transformera en horloge plus longtemps cette fois-ci.
- Lorsqu'il reviendra à son état normal, ce sera l'indication que le graphique
- est prêt. Il se peut que la fenêtre titrée "Preview" obscurcisse celle titrée
- "Output Window" (qui contient le résultat final). Ecartez là simplement de
- votre vue. Mais n'oubliez pas de re-sélectionner la fenêtre d'interface si
- vous devez faire d'autres manipulations sur le graphe.
- Vous contaterez alors probablement 3 choses:
- 1. C'est joli (je l'espère :-)
- 2. C'est trop petit.
- 3. Les couleurs ne vous conviennent pas.
-
- Règlons les problèmes un par un.
- 1. C'est joli : Ce n'est pas un problème !!!
- 2. C'est trop petit: Vous n'avez qu'a "tirez" le bouton en bas, à droite
- de la fenêtre titrée "Output Window" et changez sa taille pour celle qui
- vous convient. Par la suite, refaites "Render". Voilà!
- 3. Les couleurs ne vous conviennent pas: C'est la prochaine étape!
-
- L'étape suivante est le choix des couleurs:
- Choisissez l'option "Color..." (Amiga+K) sous le menu "Edit". Une boite de
- dialogue vous apparaîtra, titrée "Data color selector". A gauche, vous verrez
- la représentation de toutes les couleurs disponibles alors qu'à droite, vous
- avez les ensembles de données à colorer. Vous reconnaîtrez dans cette dernière,
- les textes associés à chacunes de vos lignes. Il y à aussi deux entrées
- supplémentaires nommées "Background" et "Floor" permmetant respectivement de
- changer la couleur du fond et du plancher (comparez avec le résultat final et
- vous comprendrez mieux). Selectionnez "Floor". Un rectangle blanc encadrant
- la couleur et le texte devrait vous indiquer qu'il a bien été choisi. Par
- la suite, sélectionnez une couleur de votre choix dans l'ensemble des
- couleurs à gauche. La couleur immédiatement à gauche de l'inscription "Floor"
- devrait changer , indiquant que votre sélection à été retenue. Faites de même
- jusqu'à ce que les couleurs vous conviennent. Lorsque vous aurez terminé,
- poussez le bouton en haut à gauche de la fenêtre, ceci validera vos entrées.
- Pour voir le résultat, refaites "Render".
- La dernière étape consiste à sauvegarder le fichier au format
- "AegisDraw2000". Pour ce faire, choisissez l'option "Draw2000" du sous-menu
- "Format..." du menu "Project" (Amiga+4). Par la suite, choisissez l'option
- "Save as..." du menu "Project" (Amiga+A) qui appellera un sélecteur de
- fichier. Entrez un nom au clavier, appuyez sur "Return", et voilà!
- Après quelques temps, le fichier devrait être sauvegardé et maintenant
- disponible pour utilisation ultérieure.
- Pour plus de détail sur les fonctions particulières de JCGraph,
- consultez la section 4.
-
- IMPORTANT:
- Il est à noter que si vous possédez ARexx (ou le WB 2.0) et Advantage,
- un 'script' Arexx est inclu qui importera directement des données
- provenant de ce tableur.
-
- 4.Sommaire des options de menu.
- -------------------------------
- PROJECT
- About... :Information sur JcGraph.
- Open... :Ouvre un fichier texte de données (Desciption à la section 6).
- Save :Sauvegarde le graphique au format spécifié par "Format" sans requête de nom.
- Save as... :Sauvegarde le graphique au format spécifié par "Format" en
- recquérant le nom de fichier.
- Format :Sélectionne le format de fichier en sortie: voir section 7.
- Print... :Permet l'impression du résultat final à l'imprimante.
- Vous aurez la possibilité d'annuler une seule fois avant
- l'impression, si vous choisissez "Print", l'impression se
- fera complètement.
- Quit... :Quitte JcGraph...
-
- EDIT
- Undo :Permet d'annuler la dernière rotation effectuée.
- Copy :Pas encore implantée.
- Color... :Permet la sélection des couleurs.
- Le bouton cyclique permet d'alterner entre les positions
- couleur et tons de gris, cette dernière donnant un aperçu du
- résultat à l'imprimante.
- Palette... :Vous permet de changer la palette de couleurs de l'écran.
- Voyez la section dédiée au Sélecteur de palette pour plus
- de détails.
-
- TEMPLATE
- Load... :Charge un fichier "Template" qui contient:
- -le type de graphique.
- -les positions de rotation.
- -la perspective.
- Save... :Sauvegarde un fichier "Template".
-
- GRAPHTYPE
- Load... :Charge un nouveau type de graphique 2D ou 3D.
-
- ENVIRONMENT
- Iconify :Pas encore implanté (mmmm).
- Notes... :Permet de laisser un commentaire sur un sujet qui vous est
- important. Si vous enfoncez l'icône de gauche. Le message
- laissé vous sera rappelé avant de quitter.
- Arrange :Organise logiquement les fenêtre à l'écran.
- Req. Flash ON/OFF :Allume/éteind le clignotement d'écran des boites de requêtes.
- Exec Rexx... :Permet l'éxécution d'un fichier ARexx.
- Preview OFF/ON :Ouverture/fermeture de la fenêtre PREVIEW.
- Output Back/Front :Lors de la modification de taille de la fenêtre OUTPUT,
- elle sera ré-ouverte à l'avant ou l'arrière selon le choix
- Back ou Front.
-
- HELP
- General... :Activera le système d'aide générale.
- On Help... :Activera le système d'aide sur l'aide.
- Start Help :Permet d'avoir de l'aide spécifique. Vous n'aurez par la suite
- qu'à selectionner un bouton ou une option de menu et vous
- obtiendrai de l'aide spécifique à cet item. Pour stopper, re-selectionner cette option (qui s'appellera maintenant
- Stop Helper).
-
- 5.Fenêtre de l'interface.
- -------------------------
- Vous pouvez la reconnaitre au fait qu'elle contient tous les
- boutons-poussoirs qui controlent l'apparence de graphique.
- Prenons chaque "Gadget" (nous parlerons plutot de "gadget", terme emprunté
- de l'Anglais traduisant plus ou moins la notion de "Bouton-poussoir" ) en
- débutant par le haut:
-
- 1. La première ligne de "gadgets" contient (en partant de la droite);
- l'identificateur de rotation, 'X' dans le cas présent, un gadget
- "glissière" permettant de déterminer la valeur de la rotation autour de
- l'axe des 'X', et un gadget permettant l'entrée numérique de la valeur de
- rotation 'X'. La modification de l'un ou l'autre de ces "gadget" entraîne
- automatiquement une modification de l'apparence du graphique dans la
- fenêtre titrée "Preview".
- 2. et 3. La même chose pour l'axe des 'Y' et 'Z' respectivement.
- 4. Le gadget à glissière nommé "Perspective" permet , comme son nom
- l'indique, de changer la perspective du graphique; plus la glissière
- (le bouton en forme de flêche) sera tiré vers la gauche, plus la perspective
- déformera le graphique alors que la tirer vers la droite donnera un effet
- plus orthogonal.Il est à noter que cet effet n'est que visuel et n'est donc
- pas conservé lors d'une sauvegarde au type "3D GEO".
- 5. Le gadget titré "Undo" permet d'annuler la dernière rotation effectuée.
- L'option de menu "Undo" (Amiga+Z) effectue la même tâche.
- 6. Le gadget titré "Render" permet de visualiser le résultat final des
- modifications appliquées.
- 7. Il y a aussi un groupe de boutons à l'extrême gauche. Ils peuvent être
- programmés via le langage ARexx et exécuter un fichier ARexx lorsqu'ils sont
- pressés. Voyez les détails de leur programmation dans les fichiers ARexx
- eux-mêmes (dans l'entête) qui sont au format texte.
-
- 6.Format de fichier en entrée de JcGraph.
- -----------------------------------------
- Pour l'instant, JcGraph accepte uniquement son propre format de fichier.
- Selon la réponse (le nombre d'enregistrements et les suggestions), je verrai
- s'il vaut la peine de faire des filtres d'importation et/ou une interface
- d'entrée de données.
-
- Voici la description de ce format:
-
- 1002, 1. Identifieur des données: Toujours 1002.
- 4,2,80,6.0, 2. #Colonnes,#Lignes,Espa. Cote, Multiplicateur
- 10,20,30,40, 3. Première ligne
- 50,60,60,80, 4. Deuxième line
- Jan,Feb,Mar,Apr, 5. Textes sous chaque colonnes
- Gaz,Oil, 6. Textes associés à chaque ligne.
-
- Notes: Toutes les valeurs peuvent varier de -1000 à 1000.
- Le fichier doit se terminer par une virgule.
- Quand le Multiplicateur prend la valeur 0, les chiffres prennent la
- forme entière (ie sans point flottant).
- Les données doivent être séparées par des virgules mais peuvent être
- organisées logiquement avec des "Return".
-
- 7.Format de fichier en sortie de JcGraph.
- -----------------------------------------
- IFF ILBM:
- Fichier compatible avec la majorité des programmes de dessin non-structuré.
-
- EPSF COLOR & GRAY:
- Fichier PostScipt encapsulé. Pour l'instant, c'est le seul format où la
- légende sera générée automatiquement. A moins d'avoir un interpréteur
- PostScript, ce fichier ne peut être imprimé sur des imprimantes autres que
- celles supportant le protocole PostScript. par défaut, la fonte de caractère
- utilisée pour la légende est "Times-Roman". Si vous désirez, par la suite,
- imprimer ce fichier EPS et que vous possédez une imprimante PostScript,
- sauvegardez le résultat au format EPSF, puis , tapez, à partir du CLI/SHELL
- "copy Nom_de_fichier to SER:" si votre imprimante est branchée au port série
- ou "copy Nom_de_ficher to par:" si votre imprimnate est branchée au port
- parrallèle. Choisissez l'option COLOR ou GRAY selon le type de votre
- imprimante.
-
- 3D GEO:
- Format de fichier tridimensionnel compatible avec les programme de
- modélisation 3D suivant: 3DProfessionnal, VideoScape, LightWave, Vertex.
- Les textes sont sauvegardés aussi.
-
- Draw2000:
- Format de dessin structuré compatible avec les programmes suivants:
- PageStream 2.2, Professionnal Page 3.0, AegisDraw2000. Permet l'impression
- de grande qualité , même pour les imprimantes matricielles. Il est à noter que j'ai
- eu des problèmes à l'importation de fichier AegisDraw dans PageStream. Le
- problème ne semble pas provenir uniquement de JcGraph car des fichiers
- AegisDraw créés avec Multiplot et Advantage ont causés les mêmes problèmes.
-
- 8.Modification du graphique.
- ----------------------------
- 8.1 La taille des fontes:
- Vous pouvez modifier la taille des fontes de caractères en éditant le
- fichier du type de graphique correspondant. La taille de la fonte des cotes
- est le troisième chiffre en partant de la fin du fichier .grf. La taille de
- la fonte des lignes est le quatrième, toujours en partant de la fin alors que
- celle des colonnes est le cinquième. Il y a aussi une facon plus directe
- pour changer la taille des fontes de caractères qui implique l'utilisation
- du langage ARexx; voyez la section 12 pour plus de détails (un fichier
- ARexx inclu permet ces changements directement à partir de l'interface).
-
- 9.Equivalents clavier.
- ----------------------
- PROJECT
- Amiga Droite+O :Open...
- Amiga Droite+S :Save
- Amiga Droite+A :Save as...
- Amiga Droite+1 :Format IFF ILBM
- Amiga Droite+2 :Format EPSF
- Amiga Droite+3 :Format 3D Geo
- Amiga Droite+4 :Format Draw2000
- Amiga Droite+P :Print...
- Amiga Droite+Q :Quit...
-
- EDIT
- Amiga Droite+Z :Undo
- Amiga Droite+K :Color...
- Amiga Droite+, :Palette...
-
- TEMPLATE
- Amiga Droite+L :Load...
- Amiga Droite+U :Save...
-
- GRAPHTYPE
- Amiga Droite+T :Load...
-
- ENVIRONMENT
- Amiga Droite+. :Notes...
- Amiga Droite+R :Arrange...
-
- HELP
- Amiga Droite+G :General...
- Amiga Droite+H :On Help...
- Amiga Droite+J :Start Helper/Stop Helper
-
- COLOR SELECTOR:
- Flêche droite: Sélectionne la couleur suivante.
- Flêche gauche: Sélectionne la couleur précédente.
- Flêche haut : Sélectionne la ligne précédante.
- Flêche bas : Sélectionne la ligne suivante.
-
- Autres:
- F1 :Ouvre/Ferme la fenêtre de PREVIEW.
- F6 a F10 :Controlle via ARexx.
-
- NB: La touche ESC permet de sortir de la plupart des boîtes de requête sans
- rien modifier.
-
- 10.Sélécteur de palette de couleurs.
- ------------------------------------
- Cette fenêtre vous permettra de changer les couleurs par défaut de votre
- écran de travail en utilisant les modèles de couleur RGB et HSL. En haut de
- la fenêtre, vous retrouverez les boutons standard (ie Fermeture, profondeur
- , etc...) qui ne nécéssitent pas d'être commentés ici (référez-vous plutôt
- à votre manuel d'utilisation). Le premier "gadget", le plus à gauche, en haut,
- est un rectangle enfoncé qui contient la couleur actuellement active. Pressez
- sur n'importe quelle couleur au bas de la fenêtre pour qu'elle devienne
- active et qu'elle apparaîsse dans ce rectangle. Immédiatement à la droite
- de ce "gadget", se trouve les lettres RGB suivies par trois glissières. Cela
- signifie que vous êtes dans le mode de sélection de couleurs RGB et que
- chacune des composentes R (rouge), G (vert) et B (Bleu) peuvent être
- changées avec la glissière appropriée, à droite. Ce sélecteur de couleurs
- offre aussi la possibilité de travailler en mode HSL (hue, saturation,
- luminance), vous devez simplement cliquer sur l'inscription RGB, cliquez une
- deuxième fois pour retourner au mode RGB. Le gros "gadget" multicolore en bas,
- à gauche, se passe pratiquement d'explication, il sert à sélectionner la
- couleur active. À sa droite, on retrouve une grappe de boutons dont les
- fonctions sont les suivantes:
-
- COPY: Copie la couleur présentement active vers une autre choisie par
- la suite.
- RANGE: Définit une gradation de couleur entre deux couleurs de la palette
- que vous choisirez.
- OK: Accepte la nouvelle palette de couleurs.
- CANCEL: Cancelle les modifications effectuées à la palette.
-
- Le menu:
-
- Open... : Permet de charger une palette de couleurs sauvegardée au
- préalable. Notez bien que JcGRaph peut retrouver la
- palette de couleurs de tout fichier IFF contenant des CMAP
- comme les fichiers Imagine, DR2D, ILBM.
- Save as... : Permet de sauvegarder la palette de couleurs courante.
- Copy : Copie la palette de couleurs dans le "clipboard".
- Paste : Récupère la palette de couleurs du "clipboard".
-
- NB Si vous appuyez la touche ESC, cela aura le même effet que de pressez
- CANCEL.
-
- 11.Options de TOOLTYPE et ligne de commande.
- --------------------------------------------
- SCREEN=custom :démarre JcGraph sur l'écran du WorkBench.
- SCREEN=workbench :démarre JcGraph sur son propre écran.
- HELPENGINE=file :Systeme d'aide en ligne utilise.
- TOOLPRI=-127 to 127 :Sélectionne la priorité de départ de JcGraph.
- PORTNAME=name :Nom du port ARexx au départ.
- STARTUP=scriptname :Fichier ARexx à exécuter au démarrage.
-
- 12.Interface ARexx.
- -------------------
- JcGraph possède maintenant sa propre interface ARexx. Bien entendu, si vous
- possédez une version du Workbench inférieure à 2.0, vous devez vous procurer
- la version commerciale de ARexx de William Hawes ou , encore mieux,
- procurez-vous le WB 2.0. JcGraph se sert d'ARexx pour un nombre important
- de ses nouvelles fonctions comme la sauvegarde des positions des fenêtres,
- les boutons ARexx, les clefs programmables, etc... Je crois avoir implanté
- un bon nombre de commandes ARexx. Sentez-vous totalement libres de modifier
- et de distribuer les fichiers ARexx inclus avec JcGraph (si vous créez un
- 'script' qui pourrait revêtir un intérêt particulier pour plusieurs
- personnes, n'hésitez pas à me l'envoyer, je le distribuerai à mes utilisateurs
- enregistrés).
-
- Il y a plus de 40 commandes ARexx disponibles depuis JcGraph.
- Elles sont (en ordre alphabétique):
-
- ActivateWindow:
- Function: Selectionne la fenêtre courante.
- Input: INTERFACE/K,OUTPUT/K,PREVIEW/K.
- Output: Nil.
- Note: Nil.
- See also: Nil.
-
- Button:
- Function: Assigne un script a un des dix boutons à l'écran.
- Input: numero bouton (1 to 10),LABEL=,script répertoire et nom.
- Output: Nil.
- Note: ex:"button 7 label=Rend JcGraph:test/tess.rex"
- Les positions des paramètres ne peuvent être changées.
- See also: Keyboard.
-
- Close:
- Function: Quitte JcGraph.
- Input: FORCE/S.
- Output: Nil.
- Note: Même que Quit (Style guide)
- See also: Quit.
-
- Copy:
- Function:
- Input:
- Output:
- Note: Devrait être active dans la version 1.2.
- See also:
-
- GetDataColor:
- Function:
- Input:
- Output:
- Note: Devrait être active dans la version 1.2.
- See also:
-
- GetFormat:
- Function: Retourne le format de fichier courant.
- Input: Nil.
- Output: As string:
- 1- IFF ILBM
- 2- EPSF Gray
- 3- EPSF Color
- 4- 3D Geo
- 5- Draw 2000
- Note: Nil.
- See also: SetFormat.
-
- GetGraphType:
- Function: Retourne le répertoire du type de graphe and filename.
- Input: Nil.
- Output: répertoire + nom de fichier.
- Note: Si la valeur retournée est DFLT, cela veut dire qu'aucun type
- de graphique n'a été chargé et que celui par défaut est utilisé.
- Si rien n'est retourné, alors aucun type de graphique n'est
- disponible.
- See also: LoadGraphType.
-
- GetRotation:
- Function: Retourne les valeurs de rotation X,Y et Z.
- Input: Nil.
- Output: Valeur X, Y et Z en format texte séparé par des espaces.
- Note: ex:"12 34 45".
- See also: SetRotation,GetX,GetY,GetZ,SetX,SetY,SetZ.
-
- GetScreenAddress:
- Function: Retourne le pointeur sur la structure écran JcGraph.
- Input: Nil.
- Output: Nil.
- Note: Permet l'intégration facile de code externe.
- See also: Nil.
-
- GetTypeValue:
- Function: Retourne une valeur spécifique au type de graphique.
- Input: Position de la donnée.
- Output: Sa valeur en format texte.
- Note: Aucune validation sur la valeur en entrée.
- See also: SetTypeValue.
-
- GetX:
- Function: Retourne la valeur présente de rotation en X.
- Input: Nil.
- Output: Valeur texte de rotation en X.
- Note: Nil.
- See also: SetRotation,GetRotation,GetY,GetZ,SetX,SetY,SetZ.
-
- GetY:
- Function: Retourne la valeur présente de rotation en Y.
- Input: Nil.
- Output: Valeur texte de rotation en Y.
- Note: Nil.
- See also: SetRotation,GetRotation,GetX,GetZ,SetX,SetY,SetZ.
-
- GetZ:
- Function: Retourne la valeur présente de rotation en Z.
- Input: Nil.
- Output: Valeur texte de rotation en Z.
- Note: Nil.
- See also: SetRotation,GetRotation,GetY,GetX,SetX,SetY,SetZ.
-
- Keyboard:
- Function: Assignation de 'script' ARexx a une touche F6 à F10.
- Input: KEY/K,CMD/K.
- Output: Nil.
- Note: ex:"Keyboard key=F6 cmd=rexx:test.rex"
- See also: Button.
-
- LoadGraphType:
- Function: Charge un nouveau type de graphique.
- Input: nom de fichier.
- Output: Nil.
- Note: ex:'LoadGraphType work:jcgraph/graphtype/gugusse3D.grf'
- Si aucun nom de fichier n'est spécifié, une boite de
- requête de fichier apparaîtra.
- See also: GetGraphType.
-
- MoveWindow:
- Function: Positionne la fenêtre active.
- Input: TOPEDGE/K,LEFTEDGE/K.
- Output: Retourne la position avant modification (LeftEdge et TopEdge).
- Note: Une valeur de -1 dans TopEdge ou LeftEdge résultera en une
- absence de changement de position dans ce champs particulier.
- See also: SizeWindow.
-
- Nop:
- Function: Ne fait absolument rien.
- Input: Nil.
- Output: Nil.
- Note: Nil.
- See also: Nil.
-
- Open:
- Function: Ouvre un fichier de données JcGraph ASCII.
- Input: FILENAME/K.
- Output: Nil.
- Note: Si aucun nom de fichier n'est donné, une boite de requête
- apparaîtra.
- See also: Close, Quit.
-
- Print:
- Function: Imprime le graphique sur imprimante.
- Input: Nil.
- Output: 10= si aucun graphique n'a été créé.
- Note: Nil.
- See also: Nil.
-
- Quit:
- Function: Quitte JcGraph.
- Input: FORCE/S.
- Output: Nil.
- Note: Force empêche l'affichage de la boîte de requête de projet
- modifié.
- See also: Close.
-
- Render:
- Function: Crée un graphique en utilisant les paramètres présents.
- Input: Nil.
- Output: Nil.
- Note: Si aucun type de graphe n'est choisi, JcGraph vous avertira.
- See also: Nil.
-
- RequestFile:
- Function: Affiche une boîte de requête de fichier.
- Input: TITLE/K,PATH/K,FILE/K,PATTERN/K.
- Output: RC=0->OK, RC=5->CANCEL, RESULT=répertoire + nom de fichier.
- Note: Nil.
- See also: RequestString,RequestNumber,RequestResponse,RequestNotify.
-
- RequestNotify:
- Function: Ouvre une fenêtre avec du texte et un bouton OK.
- Input: message.
- Output: Nil.
- Note: Légère différence ici avec le 'Style Guide';
- ex: 'RequestNotify This is the message'
- See also: RequestString,RequestNumber,RequestResponse,RequestFile.
-
- RequestNumber:
- Function: Ouvre une fenêtre avec du texte, bouton entier, OK et
- CANCEL.
- Input: message.
- Output: if RC=0 -> OK, RC=5 -> CANCEL . Result=valeur en texte.
- Note: Légère différence ici avec le 'Style Guide';
- ex: 'RequestNumber This is the message'
- See also: RequestString,RequestNotify,RequestResponse,RequestFile.
-
- RequestResponse:
- Function: Ouvre une fenêtre requérant une réponse OK ou CANCEL.
- Input: message.
- Output: RC=0 if OK, RC=5 si CANCEL.
- Note: Légère différence ici avec le 'Style Guide';
- ex: 'RequestResponse This is the message'
- See also: RequestString,RequestNumber,RequestNotify,RequestFile.
-
- RequestString:
- Function: Ouvre une fenêtre avec du texte, gadget texte, OK et CANCEL.
- Input: message.
- Output: if RC=0 -> OK, RC=5 -> CANCEL . Result=texte.
- Note: Légère différence ici avec le 'Style Guide';
- ex: 'RequestString This is the message'
- See also: RequestNumber,RequestNotify,RequestResponse,RequestFile.
-
- Rx:
- Function: Exécute un fichier ARexx de facon asynchrone.
- Input: Nom du fichier ARexx.
- Output: Nil.
- Note: Légère différence ici avec le 'Style Guide';
- ex: 'Rx work:test.rex'
- See also: Nil.
-
- Save:
- Function: Sauve le graphique en utilisant les paramètres présents.
- Input: Nil.
- Output: Nil.
- Note: Nil.
- See also: SaveAs.
-
- SaveAs:
- Function: Sauve le graphique en utilisant le format de fichier
- présent et en spécifiant le nom de fichier.
- Input: NAME/K.
- Output: Nil.
- Note: Si aucun nom de fichier n'est spécifié, JcGraph le demande.
- See also: Save.
-
-
- ScreenToBack:
- Function: Pousse l'écran de JcGraph au fond.
- Input: Nil.
- Output: Nil.
- Note: Nil.
- See also: ScreenToFront.
-
- ScreenToFront:
- Function: Amène l'écran de JcGraph à l'avant plan.
- Input: Nil.
- Output: Nil.
- Note: Nil.
- See also: ScreenToBack.
-
- SetDataColor:
- Function:
- Input:
- Output:
- Note: Devrait être active dans la version 1.2.
- See also:
-
- SetDisplayBeepOn:
- Function: Active le clignotement d'écran lorsqu'une fenêtre s'ouvre.
- Input: Nil.
- Output: Nil.
- Note: Nil.
- See also: SetDisplayBeepOff.
-
- SetDisplayBeepOff:
- Function: Désactive le clignotement d'écran lorsqu'une fenêtre s'ouvre.
- Input: Nil.
- Output: Nil.
- Note: Nil.
- See also: SetDisplayBeepOn.
-
- SetFormat:
- Function: Sélectionne le format de fichier de JcGraph.
- Input: Numéro du format.
- Output: 0 = ok, 10 sinon.
- Note: Numéro format:
-
- 1- IFF ILBM
- 2- EPSF Gray
- 3- EPSF Color
- 4- 3D Geo
- 5- Draw 2000
- See also: GetFormat.
-
- SetRotation:
- Function: Choisit les valeur X,Y et Z de rotation.
- Input: Valeur X, valeur Y, valeur Z.
- Output: Nil.
- Note: ex: "SetRotation 12 32 14"
- See also: SetX, SetY, SetZ, GetX, GetY, GetZ, GetRotation.
-
- SetTypeValue:
- Function: Permet de choisir une valeur particulière du type de graphe.
- Input: Index de la valeur à être changée, nouvelle valeur.
- Output: Nil.
- Note: La valeur et l'index ne sont absolument pas validés.
- See also: GetTypeValue.
-
- SetX:
- Function: Détermine la valeur de rotation en X.
- Input: valeur.
- Output: Nil.
- Note: ex: "SetX 10"
- See also: SetY, SetZ, GetX, GetY, GetZ, GetRotation, SetRotation.
-
- SetY:
- Function: Détermine la valeur de rotation en Y.
- Input: valeur.
- Output: Nil.
- Note: ex: "SetY 10"
- See also: SetX, SetZ, GetX, GetY, GetZ, GetRotation, SetRotation.
-
- SetZ:
- Function: Détermine la valeur de rotation en Z.
- Input: valeur.
- Output: Nil.
- Note: ex: "SetZ 10"
- See also: SetY, SetX, GetX, GetY, GetZ, GetRotation, SetRotation.
-
- SizeWindow:
- Function: Détermine la taille de la fenêtre active.
- Input: WIDTH/N,HEIGHT/N.
- Output: Taille de la fenêtre avant changement (Width et Height).
- Note: Une valeur de -1 dans WIDTH ou HEIGHT résultera en une
- absence de changement de taille dans ce champs particulier.
- See also: MoveWindow.
-
- Version:
- Function: Retourne le numéro de version de JcGraph.
- Input: Nil.
- Output: Numéro de version sous la forme 'NomDeProgramme 9.99 (DD/MM/YY)'
- Note: Nil.
- See also: Nil.
-
- WindowToFront:
- Function: Amène la fenêtre active de JcGraph à l'avant plan.
- Input: Nil.
- Output: Nil.
- Note: Nil.
- See also: WindowToBack, ActivateWindow.
-
- WindowToBack:
- Function: Pousse la fenêtre active de JcGraph au fond.
- Input: Nil.
- Output: Nil.
- Note: Nil.
- See also: WindowToFront, ActivateWindow.
-
- 13.Format des types de graphiques:
- ----------------------------------
- Je crois que c'est là une des parties les plus intéressantes (du point de vue
- programmation) de JcGraph. Cela remonte à environ 2 ans: j'ai vu plusieurs
- programmes Amiga, IBM et Mac qui avaient le même but; la création de graphiques
- d'affaire, mais ce qui m'a frappé, c'était l'apparente nécessité qu'avaient
- leurs développeurs d'avoir une partie de code pour chaque type de graphique,
- quel gaspillage de ressources. Il y avait sûrement une facon de généraliser
- la création de la plupart des graphes et après quelque heures de réflexion
- sur la base d'une idée originale, j'en suis venu à ce format de fichier
- graphique:
-
- 1001, : Identifieur "Type de graphique" toujours présent.
-
- Points d'un bloc du type de graphe:
- -----------------------------------
- Les points sont organisés en deux groupes successifs de valeur X et Y. Le
- premier groupe est pour les points de la base d'un bloc alors que le second
- est pour le dessus.
-
- 4, : Nombre total de points dans un bloc.
-
- 0,0, : 1. X,Y de la base.
- 0,20, : 1. X,Y du dessus.
-
- 40,0, : 2. X,Y de la base.
- 40,20, : 2. X,Y du dessus.
-
- 40,40, : 3. X,Y de la base.
- 40,20, : 3. X,Y du dessus.
-
- 0,40, : 4. X,Y de la base.
- 0,20, : 4. X,Y du dessus.
-
- Liens inter-blocs:
- ------------------
- 2,3,1,4, : Si le drapeau de lien est allumé (1), le point 2 d'un bloc
- sera lié avec le point 1 du suivant en X. Le 3 avec le 4.
- Seulement 2 liens par côté sont permis.
- 3,4,2,1, : Si le drapeau de lien est allumé (1), le point 3 d'un bloc
- sera lié avec le point 2 du suivant en Y. Le 4 avec le 1.
- Seulement 2 liens par côté sont permis.
-
- Drapeaux:
- ---------
- 2,2, : X , Y colonnes et lignes du PREVIEW.
- 70, : Espacement de la prochaine colonne.
- 70, : Espacement de la prochaine ligne.
- 2, : Facteur multiplicatif en Y.
- 0, : Join en X ? (0 ou 1)
- 0, : Join en Y ? (0 ou 1)
- 0, : Empilés ? (0 ou 1)
- 1, : 3-D ? (0 ou 1)
- 0, : Pourcent (tarte) ? (0 ou 1)
- 0, : Dessus du bloc uniquement ? (0 ou 1)
- 0, : Dessus de l'inter-bloc uniquement ? (0 ou 1)
- 0, : Rotation 90 degré du dessus ? (0 ou 1)
- 0, : Glissement de la prochaine ligne (valeur).
- 0, : TOUJOURS 0.
- 0, : Cote-à-cote ( 0 ou 1)
- 0, : Glissement en Y (valeur).
- 0, : Non-défini.
- 40, : Taille maximale du bloc en X.
- 40, : Taille maximale du bloc en Y.
- 15, : Taille du "font" en X.
- 15, : Taille du "font" en Y.
- 15, : Taille du "font" en Z.
- 10, : Espace texte-graphe en Z
- 20, : Espace texte-graphe en X.
-
- Je crois que cette implantation du type de graphe est un bon compromis entre
- la flexibilité, la simplicité et la taille. Faites quelques expériences de
- modifications sans toutefois oublier qu'aucune validation n'est faite sur
- le type de graphe (vous devriez savoir ce que vous faites). Bien entendu,
- tout ceci est bien loin de la perfection et je vois plusieurs améliorations
- possibles qui requéreraient toutefois une ré-écriture sévère de JcGraph et
- ,à moins qu'une immense compagnie de logiciel me paie une fortune pour le
- faire, je laisserai cet exercice à l'attention du lecteur. Bien entendu,
- vous ne pouvez utiliser tout ceci dans du code commercial mais, si vous
- désirez partager des idées, vous pouvez toujours m'écrire et il me fera
- grand plaisir de vous répondre.
-
- 14.Indices sur les améliorations prévues pour JcGraph:
- ------------------------------------------------------
-
-
- FUTUR SOMBRE:
- -------------
- C'est très malheureux car je n'aie pas eu suffisamment d'enregistrements
- pour qu'il me soit motivant de continuer d'améliorer JcGraph. Peut-être
- n'ai-je pas utilisé tous les moyens nécessaires pour sa distribution mais
- je ne crois pas que ce soit dû uniquement à cela. J'espère
- uniquement que les utilisateurs entregistrés comprendront que ce n'est pas
- par malhonneteté que je cesserai les améliorations prévue pour JcGraph mais
- uniquement par manque de temps et d'argent. JcGraph est maintenant librement
- distribuable et je ne compte pas y repasser du temps vu le peut d'interet
- que semble y porter le monde Amiga. Je m'excuse aupres de mes utilisateurs
- enregistres que j'aurais bien voulu rembourser si mon compte en banque
- n'etait pas de -0.13$...
- La partie triste est que le developpement de future application se fera
- probablement sur PC, en ce qui me concerne en tout cas... pour survivre...
-
- MAIS, si vous utilisez regulierement JcGraph et croyez qu'il en vaut la
- peine (ou si vous tenez simplement a me dire bonjour), vous pouvez envoyer
- une carte postale representant votre ville ou village (... bien entendu, je
- ne refuse absolument pas l'argent qu'on m'envoie ;-). Considerez donc
- JcGraph comme du CartePostale-ware!
-
- Jean-Christophe Clément
- 921, rang 3
- St-Simon
- Québec, CANADA
- J0H-1Y0
-
- 12.Histoire de JcGraph:
- ------------------------
-
- 23 avril 1992:(v0.90)
- -Sortie officiel du premier Beta.
- -Pas complètement à mon goût mais veux d'abord voir la réponse
- des utilisateurs pour évaluer l'énergie à investir dans les
- prochaines versions.
-
- 27 avril 1992:(v0.901)
- -Corrigé un petit bug de désallocation en sortie.
- -J'ai définitivement sorti le Beta trop tôt!!!
- 30 avril 1992:(v0.902)
- -Agmentation de la précision graphes 2D.
- -Support nombres negatifs et graphiques à étages.
- -Meuilleur support point flottant.
- 14 mai 1992:(v0.903)
- -Corrige un bug avec la perspective.
- 10 octobre 1992:(v1.100)
- Améliorations majeures:
- -Correction de plusieurs erreurs simples.
- -Ajout d'un port ARexx (plus de 40 commandes) presque entièrement bâti
- selon les normes standard Commodore.
- -Support de la boîte de requêtes de fichiers standard de Commodore sous
- WB 2.0. KD_freq sous 1.3.
- -Plus robuste.
- -JcGraph est maintenant livré avec une superbe :-) étiquette sur le disque.
- -Un joli sélecteur de couleurs à été ajouté basé sur le travail de RJ Mical
- avec certains ajouts au niveau de l'esthétique et de l'ergonomie.
- -Le problème avec les plus gros "font" à été réglé.
- -La fenêtre PREVIEW peut maintenant changer de taille.
- -Plusieurs scripts ARexx intéressant sont fournis.
- -JcGraph fait maintenant plus de validation sur les fichiers en entrée.
- -Plus d'options au démarrage.
- -plein de nouveaux avantages que vous découvrirez lors de l'utilisation.
-
- 07 janvier 1993:(v1.110)
- -Sauve les objets 3D Geo avec les polygones à double-face.
- -Nouveau 'script' ARexx pour "hotlink" Advantage.
-
- 27 fevrier 1993:(v1.12)
- -petite "patch" d'allocation de memoire.
-
- 15 aout 1993:(v1.13)
- -distribution libre.
- -optimisation simple (passe de 176k a 164k).
-
- Remerciements a:
- Richard Loubier,Pierre-Louis Constantin, Steve Davis, Dominic Giampaolo,
- et tous ceux qui m'ont supporté durant mon travail sur JcGraph.
- Remerciement tout particuliers a:
- Francis Lai et Claude Lelouch pour "La belle histoire",
- Vangelis et Ridley Scott pour "1492: La conquete du paradis"
- pour m'avoir aider a traverser les periodes d'examens a l'Universite.