* Ch.lay of FAC to lay of SUR and vice versa,(C)EMA 1998 LM:31.05.2001 INTERNAL INTEGER I,J,ER,STK,N FORMAT 4,END,EDG,MODE INIT 1,LAY,ELM,STKELM,TYP CHAR*35 CEMA INIT 'CHANGE LAY FAC<-->SUR, (C) Ema 1998',KEYW,ERRMSG PROC LOAD GUSINI 4,STKELM,ER MENU 'FACES','SURFACES' LABEL MENU MSG 'WSP MULTI-SEL FAC, YES:END '//CEMA MENU,KEY,KEYW,YES,NO IF(KODE EQ MENU)LET MODE=IRET IF(KODE EQ MENU)THEN MENU IF(KODE EQ YES)EXIT BLOCKIF(KODE EQ NO)THEN DO LOAD GUSPOP STKELM,LAY,END,ER LOAD GUSPOP STKELM,ELM,END,ER IF(END EQ 0)LOAD GICLAY 1,ELM,LAY,ER WHILE(END EQ 0) MSGCNTL 'OPERATION REFUSED' BRANCH MENU ENDIF LOAD GUSEMP STKELM,ER EXEC EMASEL1 KEYW,CEMA,ERRMSG,STK,N,ER BLOCKIF(ER EQ 0)AND(N NE 0)THEN DO LOAD GUSPOP STK,ELM,END,ER LOAD GIRTPS 1,ELM,TYP,I,J,ER ************************************************* ch.fac according sur * BLOCKIF(MODE EQ 1)AND(END EQ 0)THEN BLOCKIF(TYP EQ 6)THEN LOAD GIRBAS 1,ELM,I,J,ER BLOCKIF(J EQ 5)THEN LOAD GIRLAY 1,ELM,N,ER LOAD GIRLAY 1,I,LAY,ER LOAD GICLAY 1,ELM,LAY,ER LOAD GUSPUS STKELM,ELM,J,ER LOAD GUSPUS STKELM,N,J,ER ENDIF ENDIF BLOCKIF(TYP EQ 5)THEN LET EDG=0 LOAD GISLNK 1,ELM,0,EDG,J,ER BLOCKIF(EDG NE 0)AND(ER EQ 0)THEN LET I=0 LOAD GISLNK 1,EDG,0,I,J,ER BLOCKIF(I NE 0)AND(ER EQ 0)THEN LOAD GIRLAY 1,I,LAY,ER LOAD GIRLAY 1,ELM,N,ER LOAD GICLAY 1,I,N,ER LOAD GUSPUS STKELM,I,J,ER LOAD GUSPUS STKELM,LAY,J,ER ENDIF ENDIF ENDIF ENDIF ************************************************* ch.sur according fac * BLOCKIF(MODE EQ 2)AND(END EQ 0)THEN BLOCKIF(TYP EQ 6)THEN LOAD GIRBAS 1,ELM,I,J,ER BLOCKIF(J EQ 5)THEN LOAD GIRLAY 1,ELM,N,ER LOAD GIRLAY 1,I,LAY,ER LOAD GICLAY 1,I,N,ER LOAD GUSPUS STKELM,I,J,ER LOAD GUSPUS STKELM,LAY,J,ER ENDIF ENDIF BLOCKIF(TYP EQ 5)THEN LET EDG=0 LOAD GISLNK 1,ELM,0,EDG,J,ER BLOCKIF(EDG NE 0)AND(ER EQ 0)THEN LET I=0 LOAD GISLNK 1,EDG,0,I,J,ER BLOCKIF(I NE 0)AND(ER EQ 0)THEN LOAD GIRLAY 1,I,LAY,ER LOAD GIRLAY 1,ELM,N,ER LOAD GICLAY 1,ELM,LAY,ER LOAD GUSPUS STKELM,ELM,J,ER LOAD GUSPUS STKELM,N,J,ER ENDIF ENDIF ENDIF ENDIF WHILE (END EQ 0) LOAD GUSINF STKELM,I,N,ER LET N=N/2 IF(MODE EQ 1)MSGCNTL 'NUM OF FAC CHANGED: '//CHCONV(N) IF(MODE EQ 2)MSGCNTL 'NUM OF SUR CHANGED: '//CHCONV(N) ELSE BEEP MSGCNTL ERRMSG ENDIF BRANCH MENU END