Télécharger modi.eso

Retour à la liste

Numérotation des lignes :

  1. C MODI SOURCE BP208322 16/11/18 21:19:27 9177
  2. C MODIFICATION INTERACTIVE DE MAILLAGE
  3. C
  4. SUBROUTINE MODI
  5. IMPLICIT INTEGER(I-N)
  6. -INC CCREEL
  7. -INC CCOPTIO
  8. -INC CCGEOME
  9. -INC SMELEME
  10. -INC SMCOORD
  11. SEGMENT ICPR(XCOOR(/1)/(IDIM+1))
  12. SEGMENT IVU(ITE)
  13. SEGMENT NTSEG(LTSEGS)
  14. SEGMENT /KON1/(KON(NBCON,NMAX)),KON2.KON1
  15. SEGMENT XPROJ(3,ITE)
  16. SEGMENT IDCP(ITE)
  17. SEGMENT IMILL(ITE)
  18. SEGMENT IBOUJ(ITE)
  19. COMMON /CMODI/LIGMAX,XPREC,YPREC
  20. DIMENSION XTR(40),YTR(40),ZTR(40)
  21. CHARACTER*4 JPROJ,CMOT
  22. CHARACTER*9 ZONE,ZONE1,ZONE2,ZONE3,ZONE4,ZONF1,ZONF2,ZONF3,ZONF4
  23. CHARACTER*3 CREP
  24. LOGICAL VALEUR,FENET
  25. CHARACTER*4 ITOPT(5)
  26. CHARACTER*6 LEGEND(7)
  27. LOGICAL LBLANC
  28. C# real*8 ddec
  29. real ddec
  30. DATA JPROJ/'PROJ'/,ITOPT/'PLAN','SPHE','CYLI','CONI','TORI'/
  31. DATA LBLANC/.FALSE./
  32. do i=1,40
  33. ztr(i)=0
  34. enddo
  35. LPROJ=0
  36. IBOUJ=0
  37. IPREM=0
  38. INITIA=0
  39. JOEIL=0
  40. DIOCA2=DIOCAD
  41. LIGMAX=32
  42. IMILL=0
  43. KON1=0
  44. KON2=0
  45. ICPR=0
  46. IDCP=0
  47. IVU=0
  48. NTSEG=0
  49. SEGACT MCOORD*MOD
  50. NBPTS=XCOOR(/1)/(IDIM+1)
  51. FENET=.TRUE.
  52. VALEUR=.FALSE.
  53. ICACHE=0
  54. IF (IDIM.EQ.3) ICACHE=1
  55. CALL LIROBJ('MAILLAGE',MELEME,1,IRET)
  56. IF (IDIM.EQ.3) CALL LIROBJ('POINT ',JOEIL,1,IRETOU)
  57. IF (IERR.NE.0) RETURN
  58. SEGINI ICPR
  59. ITE=0
  60. SEGACT MELEME
  61. IPT1=MELEME
  62. DO 40 I=1,MAX(1,LISOUS(/1))
  63. IF (LISOUS(/1).NE.0) IPT1=LISOUS(I)
  64. SEGACT IPT1
  65. DO 30 J=1,IPT1.NUM(/1)
  66. DO 30 K=1,IPT1.NUM(/2)
  67. IPOIT=IPT1.NUM(J,K)
  68. IF (ICPR(IPOIT).NE.0) GOTO 30
  69. ITE=ITE+1
  70. ICPR(IPOIT)=ITE
  71. 30 CONTINUE
  72. 40 CONTINUE
  73. SEGINI XPROJ
  74. SEGINI IBOUJ
  75. CALL PROMOD(ICPR,XPROJ,JOEIL,1,IBOUJ)
  76. IVPR=ICPR(/1)
  77. SEGINI IDCP
  78. DO 60 I=1,NBPTS
  79. IP=ICPR(I)
  80. IF (IP.EQ.0) GOTO 60
  81. IDCP(IP)=I
  82. 60 CONTINUE
  83. * SI REAFFICHAGE IL SE FAIT A PARTIR D'ICI
  84. 1000 CONTINUE
  85. IF (IMILL.NE.0) SEGSUP IMILL
  86. SEGINI IMILL
  87. IPT1=MELEME
  88. NBCON=9
  89. NBCONR=NBCON-1
  90. NMAX=(12*ITE)/NBCON+200
  91. IF (KON1.NE.0) SEGSUP KON1
  92. SEGINI KON1
  93. * KON EST INITIALISE A ZERO
  94. * REMPLISSAGE DU TABLEAU DES CONNECTIONS
  95. ICHAIN=ITE
  96. DO 285 IO=1,MAX(1,LISOUS(/1))
  97. IF (LISOUS(/1).NE.0) IPT1=LISOUS(IO)
  98. SEGACT IPT1
  99. K=IPT1.ITYPEL
  100. *
  101. IDEP=LPT(K)
  102. IFIN1=IDEP+2*LPL(K)-2
  103. IFIN2=IFIN1
  104. IF (LPL(K).EQ.0) THEN
  105. IF (LPT(K).EQ.0)THEN
  106. GOTO 270
  107. ELSE
  108. C Polygone
  109. IFIN1=IDEP+2*IPT1.NUM(/1)-2
  110. IFIN2=IFIN1 -2
  111. ENDIF
  112. ENDIF
  113. DO 260 I=1,IPT1.NUM(/2)
  114. IS=1
  115. DO 250 J=IDEP,IFIN1,2
  116. IF (J.LE.IFIN2) THEN
  117. N1=ICPR(IPT1.NUM(KSEGM(J),I))
  118. N2=ICPR(IPT1.NUM(KSEGM(J+1),I))
  119. ELSE
  120. C Polygone
  121. N1=ICPR(IPT1.NUM(KSEGM(IFIN2+1),I))
  122. N2=ICPR(IPT1.NUM(KSEGM(1),I))
  123. ENDIF
  124. NI=N1
  125. NJ=N2
  126. IF (N1*N2.EQ.0) GOTO 290
  127. IPO=0
  128. 110 CONTINUE
  129. NII=NI
  130. 120 DO 170 K=1,NBCONR
  131. IF (KON(K,NI).GE.NJ) GOTO 130
  132. KSAUV1=NJ
  133. GOTO 200
  134. 130 IF (KON(K,NI).NE.NJ) GOTO 170
  135. JJ=0
  136. 140 DO 150 II=1,NBCONR
  137. IF (KON(II,NJ).EQ.NII) THEN
  138. GOTO 160
  139. ENDIF
  140. 150 CONTINUE
  141. IF (KON(NBCON,NJ).NE.0) THEN
  142. NJ=KON(NBCON,NJ)
  143. GOTO 140
  144. ENDIF
  145. 160 CONTINUE
  146. GOTO 250
  147. 170 CONTINUE
  148. IF (KON(NBCON,NI).EQ.0) GOTO 180
  149. NI=KON(NBCON,NI)
  150. GOTO 120
  151. 180 KSAUV1=NJ
  152. 190 ICHAIN=ICHAIN+1
  153. IF (ICHAIN.EQ.NMAX) GOTO 290
  154. KON(NBCON,NI)=ICHAIN
  155. K=1
  156. NI=ICHAIN
  157. 200 KSAUV=KON(K,NI)
  158. KON(K,NI)=KSAUV1
  159. KSAUV1=KSAUV
  160. IF (KSAUV.EQ.0) GOTO 240
  161. KDEP=K+1
  162. IF (KDEP.EQ.NBCON) GOTO 230
  163. 210 DO 220 KHE=KDEP,NBCONR
  164. KSAUV=KON(KHE,NI)
  165. KON(KHE,NI)=KSAUV1
  166. IF (KSAUV.EQ.0) GOTO 240
  167. KSAUV1=KSAUV
  168. 220 CONTINUE
  169. 230 IF (KON(NBCON,NI).EQ.0) GOTO 190
  170. NI=KON(NBCON,NI)
  171. KDEP=1
  172. GOTO 210
  173. 240 IF (NJ.NE.N2.OR.IPO.EQ.1) GOTO 250
  174. NI=N2
  175. NJ=N1
  176. IPO=1
  177. GOTO 110
  178. 250 CONTINUE
  179. 260 CONTINUE
  180. 270 CONTINUE
  181. 285 CONTINUE
  182. GOTO 300
  183. 290 CALL ERREUR(23)
  184. RETURN
  185. 300 CONTINUE
  186. *
  187. C# XMIN=xgrand
  188. XMIN=xsgran
  189. XMAX=-XMIN
  190. YMIN=XMIN
  191. TMIN=XMIN
  192. YMAX=XMAX
  193. TMAX=XMAX
  194. DO 400 I=1,ITE
  195. XMIN=MIN(XMIN,XPROJ(1,I))
  196. XMAX=MAX(XMAX,XPROJ(1,I))
  197. YMIN=MIN(YMIN,XPROJ(2,I))
  198. YMAX=MAX(YMAX,XPROJ(2,I))
  199. TMIN=MIN(TMIN,XPROJ(3,I))
  200. TMAX=MAX(TMAX,XPROJ(3,I))
  201. 400 CONTINUE
  202. XDEC=XMAX-XMIN
  203. YDEC=YMAX-YMIN
  204. DDEC=MAX(XDEC,YDEC)*0.01
  205. C# DDEC=MAX(DDEC,xpetit)
  206. DDEC=MAX(DDEC,xspeti)
  207. XMAX=XMAX+DDEC
  208. XMIN=XMIN-DDEC
  209. YMIN=YMIN-DDEC
  210. YMAX=YMAX+DDEC
  211. IF (INITIA.EQ.0) THEN
  212. INITIA=1
  213. XMI=XMIN
  214. XMA=XMAX
  215. YMI=YMIN
  216. YMA=YMAX
  217. ENDIF
  218. *
  219. IF (IPREM.EQ.0.AND.IDIM.EQ.3) THEN
  220. CALL TRINIT(25,DIOCA2,DIOCA2,TITREE,0.15,VALEUR,NCOUMA)
  221. CALL DFENET(0.,80.,0.,25.,-1.,1.,X1,X2,Y1,Y2,.TRUE.)
  222. CALL MOIN(LPROJ,LPPR1,LPPR2,LPPR3,LPPR4)
  223. IPREM=1
  224. ENDIF
  225. 405 CONTINUE
  226. CALL TRINIT(25,DIOCA2,DIOCA2,TITREE,0.15,VALEUR,NCOUMA)
  227. CALL DFENET(0.,80.,0.,25.,-1.,1.,X1,X2,Y1,Y2,.TRUE.)
  228. CALL CHCOUL(0)
  229. * OBTENIR LES BONNES VALEURS DU CADRE
  230. CALL TRLABL(0.,16.,0.,'Cadre actuel ci dessous',23,1.)
  231. CALL TRLABL(0.,2.,0.,' Xmin',7,1.)
  232. CALL TRLABL(0.,4.,0.,' Xmax',7,1.)
  233. CALL TRLABL(0.,6.,0.,' Ymin',7,1.)
  234. CALL TRLABL(0.,8.,0.,' Ymax',7,1.)
  235. WRITE (ZONE1,FMT='(G9.2)') XMI
  236. CALL TRLABL(40.,2.,0.,ZONE1,9,1.)
  237. WRITE (ZONE2,FMT='(G9.2)') XMA
  238. CALL TRLABL(40.,4.,0.,ZONE2,9,1.)
  239. WRITE (ZONE3,FMT='(G9.2)') YMI
  240. CALL TRLABL(40.,6.,0.,ZONE3,9,1.)
  241. WRITE (ZONE4,FMT='(G9.2)') YMA
  242. CALL TRLABL(40.,8.,0.,ZONE4,9,1.)
  243. GOTO 404
  244. 403 CONTINUE
  245. CALL TRMESS('Valeur incorrecte recommencez')
  246. 404 CONTINUE
  247. LEGEND(1)=' '
  248. LEGEND(2)='Xmin ?'
  249. LEGEND(3)='Xmax ?'
  250. LEGEND(4)='Ymin ?'
  251. LEGEND(5)='Ymax ?'
  252. LEGEND(6)='Auto'
  253. LEGEND(7)='Cont'
  254. CALL MENU(LEGEND,7,6)
  255. CALL TRAFF(ICLE)
  256. IF (ICLE.EQ.5) THEN
  257. INCLE=0
  258. XMI=XMIN
  259. XMA=XMAX
  260. YMI=YMIN
  261. YMA=YMAX
  262. ELSEIF (ICLE.EQ.6) THEN
  263. INCLE=0
  264. ELSEIF (ICLE.EQ.1) THEN
  265. CALL TRGET('NOUVELLE VALEUR DE XMIN :',ZONF1)
  266. INCLE=1
  267. IF (ZONF1.NE.ZONE1) READ (ZONF1,FMT='(G9.2)',ERR=403) XMI
  268. ELSEIF (ICLE.EQ.2) THEN
  269. CALL TRGET('NOUVELLE VALEUR DE XMAX :',ZONF2)
  270. INCLE=1
  271. IF (ZONF2.NE.ZONE2) READ (ZONF2,FMT='(G9.2)',ERR=403) XMA
  272. ELSEIF (ICLE.EQ.3) THEN
  273. CALL TRGET('NOUVELLE VALEUR DE YMIN :',ZONF3)
  274. INCLE=1
  275. IF (ZONF3.NE.ZONE3) READ (ZONF3,FMT='(G9.2)',ERR=403) YMI
  276. ELSEIF (ICLE.EQ.4) THEN
  277. CALL TRGET('NOUVELLE VALEUR DE YMAX :',ZONF4)
  278. INCLE=1
  279. IF (ZONF4.NE.ZONE4) READ (ZONF4,FMT='(G9.2)',ERR=403) YMA
  280. ENDIF
  281. IF (INCLE.EQ.1) GOTO 405
  282. CALL TRINIT(25,DIOCA2,DIOCA2,TITREE,0.15,VALEUR,NCOUMA)
  283. CALL DFENET(XMI,XMA,YMI,YMA,-1.,1.,X1,X2,Y1,Y2,FENET)
  284. * POUR TRAVAILLER EN NON SEGMENTE
  285. XPREC=(XMA-XMI)/100
  286. YPREC=(YMA-YMI)/100
  287. XPREC=MAX(XPREC,YPREC)
  288. YPREC=MAX(XPREC,YPREC)
  289. * INITIALISATION DE IVU
  290. * IVU=1 PT VU
  291. * IVU<>1 PT PAS VU
  292. IF (IVU.NE.0) SEGSUP IVU
  293. SEGINI IVU
  294. DO 410 I=1,ITE
  295. IVU(I)=1
  296. 410 CONTINUE
  297. IF (ICACHE.NE.0) THEN
  298. MCOUP=0
  299. CALL TIRET3(XPROJ,MELEME,ICPR,XMIN,XMAX,YMIN,YMAX,IVU,NELEM,
  300. # TMIN,TMAX,MCOUP)
  301. SEGACT ICPR
  302. ENDIF
  303. IF (NTSEG.NE.0) SEGSUP NTSEG
  304. IF (ICACHE.EQ.1) THEN
  305. LTSEGS=1000
  306. SEGINI NTSEG
  307. LTSEG=0
  308. ENDIF
  309. CALL CHCOUL(2)
  310. IF (KON2.NE.0) SEGSUP KON2
  311. SEGINI,KON2=KON1
  312. SEGACT KON1*MOD
  313. ITR=1
  314. KAUX=1
  315. 500 K=KAUX
  316. IF (IVU(KAUX).NE.1) GOTO 530
  317. KAUXR=KAUX
  318. 510 DO 520 KL=1,NBCONR
  319. ITRA=KON(KL,K)
  320. IF (ITRA.LT.0) GOTO 520
  321. IF (ITRA.EQ.0) GOTO 530
  322. IF (IVU(ITRA).EQ.1) GOTO 540
  323. 520 CONTINUE
  324. K=KON(NBCON,K)
  325. IF (K.NE.0) GOTO 510
  326. 530 KAUX=KAUX+1
  327. IF (KAUX.EQ.ITE+1) GOTO 630
  328. GOTO 500
  329. 540 CONTINUE
  330. IF (ITR.GT.1) THEN
  331. CALL POLRL(ITR,XTR,YTR,ZTR)
  332. ENDIF
  333. ITR=1
  334. XTR(1)=XPROJ(1,KAUXR)
  335. YTR(1)=XPROJ(2,KAUXR)
  336. KPRESS=KAUXR
  337. GOTO 560
  338. 550 KL=1
  339. 560 DO 570 L=KL,NBCONR
  340. M=KON(L,K)
  341. IF (M.EQ.0) GOTO 500
  342. IF (M.LT.0) GOTO 570
  343. IF (IVU(M).NE.1) GOTO 570
  344. GOTO 580
  345. 570 CONTINUE
  346. K=KON(NBCON,K)
  347. IF (K.EQ.0) GOTO 500
  348. GOTO 550
  349. 580 CONTINUE
  350. ITR=ITR+1
  351. XTR(ITR)=XPROJ(1,M)
  352. YTR(ITR)=XPROJ(2,M)
  353. IF (ITR.EQ.40) THEN
  354. CALL POLRL(ITR,XTR,YTR,ZTR)
  355. XTR(1)=XTR(ITR)
  356. YTR(1)=YTR(ITR)
  357. ITR=1
  358. ENDIF
  359. KON(L,K)=-KON(L,K)
  360. M1=M
  361. 590 DO 600 L=1,NBCONR
  362. IF (KON(L,M1).EQ.0) GOTO 620
  363. IF (KON(L,M1).EQ.KPRESS) GOTO 610
  364. 600 CONTINUE
  365. M1=KON(NBCON,M1)
  366. IF (M1.EQ.0) GOTO 620
  367. GOTO 590
  368. 610 KON(L,M1)=-KON(L,M1)
  369. 620 KPRESS=M
  370. GOTO 550
  371. 630 CONTINUE
  372. IF (ITR.GT.1) CALL POLRL(ITR,XTR,YTR,ZTR)
  373. ITR=1
  374. IF (ICACHE.EQ.0) GOTO 670
  375. C ON REMPLIT ISEGM AVEC LES SEGMENTS EN PARTIE VU
  376. DO 660 K=1,ITE
  377. IF (IVU(K).NE.1) GOTO 660
  378. KK=K
  379. 640 DO 650 KL=1,NBCONR
  380. ITRA=KON(KL,KK)
  381. IF (ITRA.LT.0) GOTO 650
  382. IF (ITRA.EQ.0) GOTO 660
  383. IF (LTSEGS-LTSEG.LT.10) THEN
  384. LTSEGS=LTSEGS+1000
  385. SEGADJ NTSEG
  386. ENDIF
  387. NTSEG(LTSEG+1)=K
  388. NTSEG(LTSEG+2)=ITRA
  389. NTSEG(LTSEG+3)=2
  390. LTSEG=LTSEG+3
  391. 650 CONTINUE
  392. KK=KON(NBCON,KK)
  393. IF (KK.NE.0) GOTO 640
  394. 660 CONTINUE
  395. 670 CONTINUE
  396. SEGDES KON1
  397. IF (ICACHE.NE.0) THEN
  398. CALL DICHO3(XPROJ,MELEME,ICPR,XMIN,XMAX,
  399. # YMIN,YMAX,IVU,NTSEG,NELEM,IDCOUL,IDCOUL,LBLANC,LTSEG)
  400. SEGACT MELEME
  401. DO 671 IO=1,LISOUS(/1)
  402. IPT1=LISOUS(IO)
  403. SEGACT IPT1
  404. 671 CONTINUE
  405. ENDIF
  406. 1010 CONTINUE
  407. CALL MENUU
  408. CALL TRAFF(ICLE)
  409. * DEMANDE DE REAFFICHAGE
  410. IF (ICLE.EQ.11) GOTO 1000
  411. * DEPLACEMENT DE NOEUD
  412. IF (ICLE.EQ.1) THEN
  413. CALL MODP(XPROJ,IVU,KON2,ICPR,IDCP,IBOUJ)
  414. GOTO 1010
  415. ENDIF
  416. * NOMMER UN NOEUD
  417. IF (ICLE.EQ.2) THEN
  418. CALL MONO(XPROJ,IVU,IDCP)
  419. GOTO 1010
  420. ENDIF
  421. * SUPPRIMER UN ELEMENT
  422. IF (ICLE.EQ.3) THEN
  423. CALL MOSU(XPROJ,IVU,ICPR,MELEME)
  424. GOTO 1010
  425. ENDIF
  426. * CREATION D'UN ELEMENT
  427. IF (ICLE.EQ.4) THEN
  428. CALL MOCR(XPROJ,IVU,IDCP,MELEME,ICPR,ITE,IMILL,TMIN,IBOUJ)
  429. GOTO 1010
  430. ENDIF
  431. * NOMMER UN ENSEMBLE D'ELEMENT
  432. IF (ICLE.EQ.5) THEN
  433. CALL MONL(XPROJ,IVU,ICPR,MELEME)
  434. GOTO 1010
  435. ENDIF
  436. * ECRITURE COORDONNEES
  437. IF (ICLE.EQ.6) THEN
  438. CALL MOCO(XPROJ,IVU,KON2,IDCP,ICPR,IBOUJ)
  439. GOTO 1010
  440. ENDIF
  441. * AFFICHAGE NOMS DES POINTS
  442. IF (ICLE.EQ.7) THEN
  443. CALL MOPO(XPROJ,ICPR,IVU)
  444. GOTO 1010
  445. ENDIF
  446. * AFFICHAGE CONTOUR
  447. IF (ICLE.EQ.8) THEN
  448. CALL MOCT(XPROJ,ICPR,IVU,MELEME)
  449. GOTO 1010
  450. ENDIF
  451. * DEMANDE DE ZOOM
  452. IF (ICLE.EQ.9) THEN
  453. CALL TRMESS('Entrez le premier point pour le zoom')
  454. CALL TRDIG(X1,Y1,INCLE)
  455. CALL TRMESS('Entrez le second point pour le zoom')
  456. CALL TRDIG(X2,Y2,INCLE)
  457. XMI=MIN(X1,X2)
  458. XMA=MAX(X1,X2)
  459. YMI=MIN(Y1,Y2)
  460. YMA=MAX(Y1,Y2)
  461. GOTO 1000
  462. ENDIF
  463. * RECENTRAGE DES NOEUDS MILIEUX
  464. IF (ICLE.EQ.10) THEN
  465. CALL MOCE(MELEME,XPROJ,ICPR,IBOUJ)
  466. GOTO 1000
  467. ENDIF
  468. IF (ICLE.LT.0) GOTO 1010
  469. CALL PROMOD(ICPR,XPROJ,JOEIL,2,IBOUJ)
  470. IF (LPROJ.EQ.0) GOTO 2100
  471. NBELEM=0
  472. DO 2000 I=1,ITE
  473. IF (IBOUJ(I).EQ.0) GOTO 2000
  474. NBELEM=NBELEM+1
  475. 2000 CONTINUE
  476. IF (NBELEM.EQ.0) GOTO 2100
  477. NBNN=1
  478. NBREF=0
  479. NBSOUS=0
  480. SEGINI MELEME
  481. ITYPEL=1
  482. ICC=0
  483. DO 2010 I=1,ITE
  484. IF (IBOUJ(I).EQ.0) GOTO 2010
  485. ICC=ICC+1
  486. NUM(1,ICC)=IDCP(I)
  487. 2010 CONTINUE
  488. * TORE
  489. IF (LPROJ.EQ.5) THEN
  490. CALL ECROBJ('POINT ',LPPR4)
  491. CALL ECROBJ('POINT ',LPPR3)
  492. CALL ECROBJ('POINT ',LPPR2)
  493. CALL ECROBJ('POINT ',LPPR1)
  494. * CONE
  495. ELSEIF (LPROJ.EQ.4) THEN
  496. CALL ECROBJ('POINT ',LPPR3)
  497. CALL ECROBJ('POINT ',LPPR2)
  498. CALL ECROBJ('POINT ',LPPR1)
  499. * CYLINDRE
  500. ELSEIF (LPROJ.EQ.3) THEN
  501. CALL ECROBJ('POINT ',LPPR3)
  502. CALL ECROBJ('POINT ',LPPR2)
  503. CALL ECROBJ('POINT ',LPPR1)
  504. * SPHERE
  505. ELSEIF (LPROJ.EQ.2) THEN
  506. CALL ECROBJ('POINT ',LPPR2)
  507. CALL ECROBJ('POINT ',LPPR1)
  508. * PLAN
  509. ELSEIF (LPROJ.EQ.1) THEN
  510. CALL ECROBJ('POINT ',LPPR3)
  511. CALL ECROBJ('POINT ',LPPR2)
  512. CALL ECROBJ('POINT ',LPPR1)
  513. ENDIF
  514. CALL ECRCHA(ITOPT(LPROJ))
  515. CALL ECROBJ('POINT ',IVPR)
  516. CALL ECRCHA(JPROJ)
  517. CALL ECROBJ('MAILLAGE',MELEME)
  518. CALL DEPLAC
  519. SEGSUP MELEME
  520. 2100 CONTINUE
  521. SEGSUP XPROJ,ICPR,IVU
  522. IF (NTSEG.NE.0) SEGSUP NTSEG
  523. IF (KON1.NE.0) SEGSUP KON1
  524. IF (KON2.NE.0) SEGSUP KON2
  525. IF (IDCP.NE.0) SEGSUP IDCP
  526. IF (IMILL.NE.0) SEGSUP IMILL
  527. IF (IBOUJ.NE.0) SEGSUP IBOUJ
  528. * LB
  529. CALL TRMFIN
  530. RETURN
  531. *LB
  532. END
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales