Télécharger trciso.eso

Retour à la liste

Numérotation des lignes :

trciso
  1. C TRCISO SOURCE PV 20/03/30 21:25:24 10567
  2. CX LABEL DES ISOVALEURS DANS LE CAS LIGNE
  3. C ON LE MET A L'INTERSECTION AVEC LE CONTOUR
  4. C ESPERONS QU'IL Y EN A UN
  5. C
  6. SUBROUTINE TRCISO(IPT1,VCPCHA,ICPR,XPROJ,NISO,VCHC,IVU)
  7. IMPLICIT INTEGER(I-N)
  8. SEGMENT ICPR(0)
  9. SEGMENT VCPCHA(nbpts)
  10. SEGMENT XPROJ(3,ICPR(/1))
  11. SEGMENT IVU(ICPR(/1))
  12. CHARACTER*64 CHAIN
  13. REAL VCHC
  14. DIMENSION VCHC(*)
  15.  
  16. -INC PPARAM
  17. -INC CCOPTIO
  18. -INC SMELEME
  19. -INC SMCOORD
  20. -INC CCTRACE
  21. DATA CHAIN /'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0
  22. >123456789&@'/
  23. CALL PRCOAP(IPT1,MELEME,ICPR,IVU,IRETOU)
  24. IF (IRETOU.EQ.0) RETURN
  25. IF (IERR.NE.0) RETURN
  26. * OK ON TIENT LE CONTOUR
  27. SEGACT MELEME
  28. DO 10 IEL=1,NUM(/2)
  29. DO 15 ISEG=1,NUM(/1)-1
  30. IPA=NUM(ISEG,IEL)
  31. IPB=NUM(ISEG+1,IEL)
  32. IPA=ICPR(IPA)
  33. IPB=ICPR(IPB)
  34. IF (IPA.EQ.0.OR.IPB.EQ.0) GOTO 15
  35. IF (IVU(IPA).LE.0.OR.IVU(IPB).LE.0) GOTO 15
  36. VA=VCPCHA(NUM(ISEG,IEL))
  37. VB=VCPCHA(NUM(ISEG+1,IEL))
  38. DO 20 ISO=1,NISO
  39. VCH=VCHC(ISO)
  40. IF (VA.LT.VCH.AND.VB.LT.VCH) GOTO 20
  41. IF (VA.GT.VCH.AND.VB.GT.VCH) GOTO 20
  42. DIFF=VB-VA
  43. IF (DIFF.EQ.0.) DIFF=1.
  44. XPAR=(VCH-VA)/DIFF
  45. XTR=XPROJ(1,IPA)+XPAR*(XPROJ(1,IPB)-XPROJ(1,IPA))
  46. YTR=XPROJ(2,IPA)+XPAR*(XPROJ(2,IPB)-XPROJ(2,IPA))
  47. if (niso.lt.13) then
  48. *sg CALL CHCOUL(ICOTAB(ISO*(2-NISO/8)))
  49. CALL CHCOUL(ICOTAB(ISOTA0(ISO,NISO)))
  50. else
  51. *sg CALL CHCOUL(ISO)
  52. CALL CHCOUL(ICOTAB(MOD(ISO,12)+1))
  53. endif
  54. CALL TRLABL(XTR,YTR,0.,CHAIN(ISO:ISO),1,0.15)
  55. 20 CONTINUE
  56. 15 CONTINUE
  57. 10 CONTINUE
  58. SEGSUP MELEME
  59. RETURN
  60. END
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  

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