1 : * @DESLIS PROCEDUR MAUGIS 06/07/05 21:15:01 5480 2 : * @DESLIS PROCEDUR MAUGIS 04/10/08 21:16:18 4934 3 : 'DEBP' @DESLIS LISTREE/'LISTREEL' LISTENT/'LISTENTI' ; 4 : * MT1/'MOT' LT1/'MOT' MT2/'MOT' LT2/'MOT' MT3/'MOT' 5 : * LT3/'MOT' MT4/'MOT' XBOR1/'FLOTTANT' XBOR2/'FLOTTANT' MT5/'MOT' 6 : * YBOR1/'FLOTTANT' YBOR2/'FLOTTANT' MOT#/'MOT' ; 7 : ************************************************************************ 8 : * 9 : * Trace des dessins pour les évolutions contenus dans la table TBR 10 : * construite par TRACHIS ou TRACHIT 11 : * 12 : * LISTREE : liste de réels 13 : * LISTENT : liste d'entiers 14 : * MOT# : mot, option simple de dessin : 15 : * 'LOGX' 'LOGY' 'GRIL' 'CARR' 'DATE' 'LOGO' 'AXES' 'NCLK' 16 : * MT1 MT2 MT3 : mots-clefs 'TITR' 'TITX' 'TITY' suivis des chaînes de 17 : * caractères correspondantes LT1 LT2 LT3 18 : * MT4 MT5 : mots-clefs 'XBOR' 'YBOR' suivis respectivement de 19 : * XBOR1 XBOR2 YBOR1 YBOR2 : FLOTTANTS valant les bornes d'abscisse et 20 : * d'ordonnée respectivement 21 : * 22 : * La liste doit être donnée en premier ; 23 : * les autres options avec mot-clef viennent ensuite dans un ordre quelconque. 24 : * On ignore la donnée du mot-clef 'MIMA' puisque c'est l'option par défaut 25 : * 26 : ************************************************************************ 27 : 28 : * Récupération de l'objet à tracer 29 : * -------------------------------- 30 : 31 : 'SI' ((('NON' ('EXISTE' LISTREE)) 'ET' ('NON' ('EXISTE' LISTENT))) 32 : 'OU' (('EXISTE' LISTREE) 'ET' ('EXISTE' LISTENT)) ); 33 : 'ERREUR' 'Donnez une liste de reels ou d entiers en entree' ; 34 : 'FINSI' ; 35 : 'SI' ('EXISTE' LISTREE) ; 36 : LIS1 = LISTREE ; 37 : 'SINON' ; 38 : LIS1 = 'FLOTTANT' LISTENT ; 39 : 'FINSI' ; 40 : 41 : nn = 'DIME' LIS1 ; 42 : 'SI' (nn '<EG' 1) ; 43 : 'LISTE' lis1 ; 44 : 'ERREUR' 45 : 'La liste donnee doit avoir au moins 2 valeurs pour etre tracee'; 46 : 'FINSI' ; 47 : LIX = 'PROG' 1. 'PAS' 1. nn ; 48 : ttx = 'MOT' 'Ordre' ; 49 : tty = 'MOT' 'Valeur' ; 50 : ev1 = 'EVOL' 'MANU' ttx lix tty lis1 ; 51 : 52 : * Récupération des options de dessin 53 : * ---------------------------------- 54 : * et construction de la table des options 55 : 56 : *--Valeurs par défaut : 57 : TTR = 'CHAINE' 'Evolution des valeurs de la ' ('TYPE' LIS1) ; 58 : 59 : * table des options LOP 60 : LOP = 'TABLE' ; 61 : IOP = 1 ; 62 : 63 : * On lit une par une les données précisées par des mots-clefs 64 : 'REPETER' bcl ; 65 : 'ARGUMENT' mot1/'MOT' ; 66 : 'SI' ('NON' ('EXISTE' MOT1)) ; 67 : 'QUITTER' bcl ; 68 : 'FINSI' ; 69 : 70 : * options simples de DESSIN 71 : 'SI' ( ('EGA' MOT1 'LOGX') 'OU' ('EGA' MOT1 'LOGY') 72 : 'OU' ('EGA' MOT1 'GRIL') 'OU' ('EGA' MOT1 'CARR') 73 : 'OU' ('EGA' MOT1 'DATE') 'OU' ('EGA' MOT1 'LOGO') 74 : 'OU' ('EGA' MOT1 'SEPA') 'OU' ('EGA' MOT1 'AXES') 75 : 'OU' ('EGA' MOT1 'NCLK') 'OU' ('EGA' MOT1 'MIMA') ) ; 76 : LOP.IOP = 'MOT' MOT1 ; 77 : IOP = IOP + 1 ; 78 : 'ITERER' bcl ; 79 : 'FINSI' ; 80 : 81 : * options avec arguments ou spécifiques 82 : 'SI' (('EGA' MOT1 'TITR') 'OU' ('EGA' MOT1 'TITRE')) ; 83 : 'ARGUMENT' TTR*'MOT' ; 84 : LOP.IOP = 'MOT' 'TITR' ; 85 : LOP.(IOP+1) = 'MOT' TTR ; 86 : IOP = IOP + 2 ; 87 : 'ITERER' bcl ; 88 : 'FINSI' ; 89 : 'SI' ('EGA' MOT1 'TITX') ; 90 : 'ARGUMENT' TTX*'MOT' ; 91 : LOP.IOP = 'MOT' 'TITX' ; 92 : LOP.(IOP+1) = 'MOT' TTX ; 93 : IOP = IOP + 2 ; 94 : 'ITERER' bcl ; 95 : 'FINSI' ; 96 : 'SI' ('EGA' MOT1 'TITY') ; 97 : 'ARGUMENT' TTY*'MOT' ; 98 : LOP.IOP = 'MOT' 'TITY' ; 99 : LOP.(IOP+1) = 'MOT' TTY ; 100 : IOP = IOP + 2 ; 101 : 'ITERER' bcl ; 102 : 'FINSI' ; 103 : 'SI' ('EGA' MOT1 'XBOR') ; 104 : 'ARGUMENT' XBOR1*'FLOTTANT' XBOR2*'FLOTTANT' ; 105 : LOP.IOP = 'MOT' 'XBOR' ; 106 : LOP.(IOP+1) = 'MINIMUM' ('PROG' XBOR1 XBOR2) ; 107 : LOP.(IOP+2) = 'MAXIMUM' ('PROG' XBOR1 XBOR2) ; 108 : IOP = IOP + 3 ; 109 : 'ITERER' bcl ; 110 : 'FINSI' ; 111 : 'SI' ('EGA' MOT1 'YBOR') ; 112 : 'ARGUMENT' YBOR1*'FLOTTANT' YBOR2*'FLOTTANT' ; 113 : LOP.IOP = 'MOT' 'YBOR' ; 114 : LOP.(IOP+1) = 'MINIMUM' ('PROG' YBOR1 YBOR2) ; 115 : LOP.(IOP+2) = 'MAXIMUM' ('PROG' YBOR1 YBOR2) ; 116 : IOP = IOP + 3 ; 117 : 'ITERER' bcl ; 118 : 'FINSI' ; 119 : 120 : * donnée non identifiée 121 : 'ERREUR' ('CHAINE' 'Dans les donnees de @DESLIS, mot-clef ' 122 : mot1 ' inconnu.'); 123 : 'FIN' bcl ; 124 : 125 : * on complète les options jusqu'au nb maximal par des MIMA 126 : NOP = IOP - 1 ; 127 : NOPMAX = 40 ; 128 : 'SI' (NOP < NOPMAX) ; 129 : NB2 = NOPMAX - NOP ; 130 : 'REPETER' BLOC4 NB2 ; 131 : LOP.IOP = 'MOT' 'MIMA' ; 132 : IOP = IOP + 1 ; 133 : 'FIN' BLOC4 ; 134 : 'FINSI' ; 135 : 136 : * Desszin : 137 : * -------- 138 : * construction de la commande 139 : 'DESSIN' EV1 'XBOR' 1. nn 'TITRE' ttr 140 : LOP.1 LOP.2 LOP.3 LOP.4 LOP.5 LOP.6 LOP.7 LOP.8 141 : LOP.9 LOP.10 LOP.11 LOP.12 LOP.13 LOP.14 LOP.15 LOP.16 142 : LOP.17 LOP.18 LOP.19 LOP.20 LOP.21 LOP.22 LOP.23 LOP.24 143 : LOP.25 LOP.26 LOP.27 LOP.28 LOP.29 LOP.30 LOP.31 LOP.32 144 : LOP.33 LOP.34 LOP.35 LOP.36 LOP.37 LOP.38 LOP.39 LOP.40 ; 145 : 146 : 'FINP'; 147 : 148 : 149 :
© Cast3M 2003 - All rights reserved.
Disclaimer