Télécharger przoom.eso

Retour à la liste

Numérotation des lignes :

  1. C PRZOOM SOURCE PV 05/09/22 21:25:53 5181
  2. SUBROUTINE PRZOOM(IRESU,ISORT,IQUALI,INUMNO,INUMEL,XMI,
  3. * XMA,YMI,YMA)
  4. IMPLICIT INTEGER(I-N)
  5. -INC CCREEL
  6. -INC CCOPTIO
  7. character*9 legend(5)
  8. if (iogra.eq.6) then
  9. * opengl traitement particulier
  10. call oglzoom(ixmi,ixma,iymi,iyma)
  11. return
  12. endif
  13. * affichage du nouveau menu
  14. legend(1)='Fin trace'
  15. legend(2)=' ini'
  16. legend(3)=' zoom +'
  17. legend(4)=' zoom -'
  18. legend(5)=' pan'
  19. ncase=5
  20. llong=9
  21. call menu(legend,ncase,llong)
  22. call trmess('Choisissez une fonction')
  23. call traff(icle)
  24. if (icle.eq.1) then
  25. CALL INI(IRESU,ISORT,IQUALI,INUMNO,INUMEL,XMI,XMA,YMI,YMA)
  26. endif
  27. if (icle.eq.2) then
  28. call trmess('Donnez un coin de la zone à agrandir')
  29. call TRDIG(XxRO,XxCOL,ICLE)
  30. call trmess('Donnez un autre coin de la zone à agrandir')
  31. call TRDIG(yrO,yCOL,ICLE)
  32. * FENETRE NON DEFORMANTE
  33. XMI=MIN(XXRO,YRO)
  34. XMA=MAX(XXRO,YRO)
  35. YMI=MIN(XXCOL,YCOL)
  36. YMA=MAX(XXCOL,YCOL)
  37. XMA=MAX(XMA,YMA-YMI+XMI)
  38. YMI=MIN(YMI,-XMA+XMI+YMA)
  39. IF (XMI.EQ.XMA) XMA=XMA*1.01+1E-30
  40. IF (YMI.EQ.YMA) YMA=YMA*1.01+1E-30
  41. * ON NE CHANGE PAS LE CADRE
  42. XMIN=XMI
  43. XXAX=XMA
  44. YMIN=YMI
  45. YYAX=YMA
  46. ISORT=0
  47. IRESU=2
  48. call zoom(1,XMI,XMA,YMI,YMA)
  49. isort=0
  50. iresu=2
  51. endif
  52. if (icle.eq.3) then
  53. call trmess('Donnez un coin de la reduction')
  54. call TRDIG(XxRO,XxCOL,ICLE)
  55. call trmess('Donnez un autre coin de la reduction')
  56. call TRDIG(yrO,yCOL,ICLE)
  57. * FENETRE NON DEFORMANTE
  58. XMI=MIN(XXRO,YRO)
  59. XMA=MAX(XXRO,YRO)
  60. YMI=MIN(XXCOL,YCOL)
  61. YMA=MAX(XXCOL,YCOL)
  62. XMA=MAX(XMA,YMA-YMI+XMI)
  63. YMI=MIN(YMI,-XMA+XMI+YMA)
  64. * IF (XMI.EQ.XMA) XMA=XMA*1.01+1E-30
  65. IF (XMI.EQ.XMA) XMA=XMA*1.01+xpetit
  66. * IF (YMI.EQ.YMA) YMA=YMA*1.01+1E-30
  67. IF (YMI.EQ.YMA) YMA=YMA*1.01+xpetit
  68. * ON NE CHANGE PAS LE CADRE
  69. XMIN=XMI
  70. XXAX=XMA
  71. YMIN=YMI
  72. YYAX=YMA
  73. ISORT=0
  74. IRESU=2
  75. call zoom(-1,XMI,XMA,YMI,YMA)
  76. isort=0
  77. iresu=2
  78. endif
  79. if (icle.eq.4) then
  80. call trmess('Donnez le point source')
  81. call TRDIG(XxRO,XxCOL,ICLE)
  82. call trmess('Donnez le point cible')
  83. call TRDIG(yrO,yCOL,ICLE)
  84. * FENETRE NON DEFORMANTE
  85. XMI=XXRO
  86. XMA=YRO
  87. YMI=XXCOL
  88. YMA=YCOL
  89. XMIN=XMI
  90. XXAX=XMA
  91. YMIN=YMI
  92. YYAX=YMA
  93. ISORT=0
  94. IRESU=2
  95. call zoom(0,XMI,XMA,YMI,YMA)
  96. isort=0
  97. iresu=2
  98. endif
  99. *
  100. end
  101.  
  102.  
  103.  
  104.  
  105.  

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