C KPARC     SOURCE    CB215821  25/04/22    21:15:09     12245          
      SUBROUTINE  KPARC(KG,KBITM,NR,NINT,IINT,NMAX,IS,JS,NSTAC)
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8 (A-H,O-Z)
C Calcul des facteurs de forme en 3D
C sp appele par KREMPI
C     DETERMINATION DE L'ENSEMBLE DES POINTS INTERIEURS A UN CONTOUR
C     DONNE (DANS UNE BITMAP) REPERE PAR DES 1
C
C     REM   TAILLE MAX DE STACK = NSTAC
C     ***
C
      DIMENSION IINT(2,1)
      DIMENSION KG(2),KBITM(NR,NR),IADJ(4),JADJ(4)
      DIMENSION IS(NSTAC),JS(NSTAC)
      NS = 0
      CALL KPUSH(IS,JS,NS,KG(1),KG(2))
      NINT = 0
      KBITM(KG(1),KG(2)) = 2
C
 1    CONTINUE
      IF (NS.EQ.0) THEN
         RETURN
      ELSE
         CALL KPOP(IS,JS,NS,IP,JP)
 11      CONTINUE

         IF(NINT.GE.NMAX) RETURN
         NINT = NINT + 1
         IINT(1,NINT) = IP
         IINT(2,NINT) = JP

         CALL  KADJ(IP,JP,KBITM,NR,NADJ,IADJ,JADJ)
         IF (NADJ.EQ.0) THEN
           GOTO 1
         ELSE
           IF(NADJ.GE.2) THEN
             DO 111 K = 2,NADJ
                IP = IADJ(K)
                JP = JADJ(K)
                CALL KPUSH(IS,JS,NS,IP,JP)
                KBITM(IP,JP) = 2
 111         CONTINUE
           ENDIF
         IP = IADJ(1)
         JP = JADJ(1)
         KBITM(IP,JP) = 2
         GOTO 11
         ENDIF
      ENDIF
      END


 
