* Put info on plane, (C) EMA 1997 LM:17.08.1999 INTERNAL INTEGER ER,N,STK REAL A FORMAT 5/2,B FORMAT 5/2,C FORMAT 5/2,D FORMAT 5/2,XM(3) PLN PLN PT PT CHAR*70 STRING,STRING1 CHAR*35 CEMA INIT 'Put info on plane, (C) Ema 1998, V2' CHAR*35 MSG1 INIT 'SEL PLN // YES:END ' CHAR*35 MSG2 INIT 'Not simple plane equation! YES:END ' CHAR*35 MSG3 INIT 'Plane Equation: AX+BY+CZ+D=0 ' PROC SELECT MSG1//CEMA PLN,YES IF (KODE EQ YES) EXIT HIGHLT PLN MSGCNTL 'PLANE SELECTED' LOAD GSEIPL 1,PLN,A,B,C,D,ER LET A=INT(A*100000.)/100000. LET B=INT(B*100000.)/100000. LET C=INT(C*100000.)/100000. LET D=INT(D*100000.)/100000. LET D=-D/(A+B+C) LET STRING1=CHCONV(D) IF((ABS(A) EQ 1.)AND(ABS(B) EQ 0.)AND(ABS(C) EQ 0.)) LET STRING='X=' IF((ABS(A) EQ 0.)AND(ABS(B) EQ 1.)AND(ABS(C) EQ 0.)) LET STRING='Y=' IF((ABS(A) EQ 0.)AND(ABS(B) EQ 0.)AND(ABS(C) EQ 1.)) LET STRING='Z=' BLOCKIF(STRING(1:2) NE ' ')THEN LOAD GSOIET 1,PLN,0,N,STK,ER LOAD GUSPOP STK,PT,N,ER LOAD GIRMAT 1,PT,N,XM,ER ERASE PT LOAD GUMKHN 3,STRING1,70,STRING1,N,ER LET STRING=STRING(1:2)//STRING1 LET N=N+2 LOAD GIWTEX 1,PLN,N,STRING,XM,1,0,ER MSGCNTL 'TEXT CREATED' ELSE BEEP MSGCNTL MSG3//CHCONV(A)//CHCONV(B)//CHCONV(C)//CHCONV(D) MSG MSG2//CEMA YES NOHIGHLT PLN MSGCNTL 'EOE' ENDIF END