SOUS-ROUTINE PERMETTANT DE TROUVER LES PREMIERS VOISINS D'UN SITE QUELCONQUE


SUBROUTINE PREM_VOISINS(GLBIN,DIR,SENS,GLBOUT)
        USE CONSTANTES,ONLY: N,M,NM
        USE UTILITAIRE,ONLY: CHI,COLI
        INTEGER,INTENT(IN)              :: GLBIN,DIR,SENS
        INTEGER,INTENT(OUT)          :: GLBOUT
        INTEGER                                  :: X,Y

        X=COLI(GLBIN)                        ! coordonnee x
        Y=CHI(GLBIN)                          ! coordonnee y

        IF(DIR.EQ.O) THEN                       ! Selon x
           IF(SENS.EQ.1) THEN                   ! Voisin à droite (+x)
       IF(X.EQ.N) THEN
                 X=1
              ELSE
                 X=X+1
              ENDIF
           ENDIF
           IF(SENS.EQ.-1) THEN                  ! Voisin à gauche (-x)
       IF(X.EQ.1) THEN
                 X=N
              ELSE
                 X=X-1
              ENDIF
           ENDIF
        ENDIF

        IF(DIR.EQ.2) THEN                       ! Selon y
           IF(SENS.EQ.1) THEN                   ! Voisin en haut (+y)
       IF(Y.EQ.M) THEN
                 Y=1
              ELSE
                 Y=Y+1
              ENDIF
           ENDIF
           IF(SENS.EQ.-1) THEN                  ! Voisin en bas (-y)
       IF(Y.EQ.1) THEN
                 Y=M
              ELSE
                 Y=Y-1
              ENDIF
           ENDIF
        ENDIF

        CALL NUM_GLOBALE(X,Y,GLBOUT)

 END SUBROUTINE PREM_VOISINS