Création de sous programmes appelés par fonctions G
ENDI
IF 'P > 0 THEN 'I=0 'L='ER-L[LZ]
(erreur si plan de remontee = fond de trou)
IF 'L = 0 THEN E.891
ENDI
IF 'L < 0 THEN 'L=-'L
ENDI
IF 'Q = 0 OR 'Q > 'P THEN 'Q = 'P
ENDI
(calcul profondeur 1ere passe)
'I = 'Q-'P * 'I/'L + 'P + 'I
'J = 'L-'I
IF 'J <= 0 THEN
(descente fond de trou)
[cote]=L[LZ] G1 F[RF] G77 H10080 N[I] N[I]
G79N100
ENDI
IF 'J < 'Q/2 THEN 'I = -'Q/2 + 'L
ENDI
IF 'ER > L[LZ] THEN [prof] = -'I + 'ER
ELSE
[prof] = 'I + 'ER
ENDI
(execution 1ere passe)
[cote]=[prof] G9 G1 F[RF] G77 H10080 N[I] N[I]
IF [.IBE1(6)]=1 THEN G4 FL931
ENDI
(retrait -> ER)
[cote]='ER G0 G77 H10080 N[I] N[I]
REPEAT
(calcul cote approche)
[cote]=[garde]+[prof]G0 G77 H10080 N[I] N[I]
(calcul passes suivantes et execution)
'I = 'Q-'P * 'I/'L + 'P + 'I
IF
'J <= 0 THEN
EXIT
ENDI
IF 'J < 'Q/2 THEN 'I = -'Q/2 + 'L
ENDI
IF 'ER > L[LZ] THEN [prof] = -'I + 'ER
ELSE [prof] = 'I + 'ER
ENDI
[cote]=[prof] G9 G1 F[RF] G77 H10080 N[I] N[I]
IF [.IBE1(6)]=1 THEN G4 FL931
ENDI
[cote]='ER G0 G77 H10080 N[I] N[I]
UNTIL 'I = 'L (test si fin de boucle)
'J = 'L-'I
fr-938872/2
5
5 - 13