C PTNORM    SOURCE    CHAT      06/03/29    21:30:43     5360
      SUBROUTINE PTNORM(COORD,BOITE,IDIMC,NBN,ZERO,COORDN,iarr)
C     **********************************************************************
C     OBJET : NORMALISATION D'UN NUAGE DE POINTS ENTRE [-1.00:+1.00]
C     EN ENTREE   :
C         COORD  : TABLEAU DES COORDONNEES DES POINTS
C         BOITE  : BOITE D'ENCOMBREMENT
C         IDIMC   : DIMENSION DE L'ESPACE
C         NBN    : NOMBRE DE POINTS
C         ZERO   : ZERO
C     EN SORTIE   :
C         COORDN   : COORDONNEES NORMALISEES
C     **********************************************************************
      IMPLICIT INTEGER(I-N)
      REAL*8       COORD(*),BOITE(*),ZERO
      INTEGER    IDIMC, NBN
      REAL*8       COORDN(*)
      INTEGER    iarr
C
      INTEGER I,J
      REAL*8    XC(3),COEF
C
      COEF = 0.0D0
      DO 40 I=1,IDIMC
        XC(I) = (BOITE(I) + BOITE(IDIMC+I)) / 2.0D0
        COEF = MAX(COEF,(BOITE(IDIMC+I) - BOITE(I)))
   40 CONTINUE
C
      COEF = 2.0D0 / COEF
C
      DO 50 I=1,IDIMC
      IF( COEF*(BOITE(IDIMC+I) - BOITE(I)) .LE. ZERO )THEN
        iarr = -1
        GOTO 999
      ENDIF
   50 CONTINUE
C
      DO 70 I=1,NBN
        DO 60 J=1,IDIMC
          COORDN((I-1)*IDIMC+J) = (COORD((I-1)*IDIMC+J) - XC(J)) * COEF
   60   CONTINUE
   70 CONTINUE
C
  999 END



