]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | * |
2 | * $Id$ | |
3 | * | |
4 | * $Log$ | |
5 | * Revision 1.1.1.1 1995/10/24 10:21:50 cernlib | |
6 | * Geant | |
7 | * | |
8 | * | |
9 | #include "geant321/pilot.h" | |
10 | *CMZ : 3.21/02 29/03/94 15.41.33 by S.Giani | |
11 | *-- Author : | |
12 | SUBROUTINE GXGCON | |
13 | C. | |
14 | C. ****************************************************************** | |
15 | C. * * | |
16 | C. * Graphics control commands * | |
17 | C. * * | |
18 | C. * Authors: R.Brun ********** * | |
19 | C. * P.Zanarini ********** * | |
20 | C. * * | |
21 | C. ****************************************************************** | |
22 | C. | |
23 | #include "geant321/gcdraw.inc" | |
24 | #include "geant321/gcunit.inc" | |
25 | #include "geant321/gcxlun.inc" | |
26 | *KEEP,HIMETA | |
27 | COMMON /HIMETA/ IDMETA,XMFACT,YMFACT,TEKACT,METACT,FILOPN | |
28 | LOGICAL TEKACT,METACT,FILOPN | |
29 | COMMON /HIMETC/ CHMETA | |
30 | CHARACTER*24 CHMETA | |
31 | ||
32 | COMMON/CWK/IWK | |
33 | COMMON/DEFPAR/IATDEF,IVADEF | |
34 | CHARACTER*4 CHNAME,CHOPT,CHPAR,IATDEF | |
35 | CHARACTER*32 CHPATL | |
36 | LOGICAL IGM100 | |
37 | C. | |
38 | C. ------------------------------------------------------------------ | |
39 | C. | |
40 | CALL KUPATL(CHPATL,NPAR) | |
41 | * | |
42 | C METAFILE | |
43 | C | |
44 | IF(CHPATL.EQ.'METAFILE')THEN | |
45 | CALL KUGETI(I) | |
46 | LUN=IABS(I) | |
47 | CALL KUGETI(METAFL) | |
48 | CALL KUGETS(CHMETA,NCH) | |
49 | IF(IGM100(METAFL))THEN | |
50 | IF(LUN.LT.100)THEN | |
51 | IF(I.LT.0)THEN | |
52 | I=I-100 | |
53 | ELSEIF(I.GT.0)THEN | |
54 | I=I+100 | |
55 | ENDIF | |
56 | ELSEIF(LUN.GT.100)THEN | |
57 | LUN=LUN-100 | |
58 | ENDIF | |
59 | ENDIF | |
60 | IF(LUN.NE.0)THEN | |
61 | CALL GXLUNF(LUN,2,IFREE) | |
62 | IF(IFREE.EQ.0)GO TO 99 | |
63 | ENDIF | |
64 | LUNIT(LUN)=8 | |
65 | IF(IWK.LE.0)THEN | |
66 | IF(I.GT.0)THEN | |
67 | IWK=-2 | |
68 | ELSEIF(I.LT.0)THEN | |
69 | IWK=-1 | |
70 | ELSE | |
71 | IWK=0 | |
72 | ENDIF | |
73 | ENDIF | |
74 | CALL IGMETA(I,METAFL) | |
75 | * | |
76 | ELSEIF (CHPATL.EQ.'DOPEN') THEN | |
77 | CALL KUGETI(IVIEW) | |
78 | CALL GDOPEN(IVIEW) | |
79 | * | |
80 | ELSEIF (CHPATL.EQ.'DSHOW') THEN | |
81 | CALL KUGETI(IVIEW) | |
82 | IF(IVIEW.EQ.1000)THEN | |
83 | IVIEW=MYISEL | |
84 | ELSE | |
85 | MYISEL=IVIEW | |
86 | ENDIF | |
87 | CALL GDSHOW(IVIEW) | |
88 | * | |
89 | ELSEIF (CHPATL.EQ.'DELETE') THEN | |
90 | CALL KUGETI(IVIEW) | |
91 | CALL GDELET(IVIEW) | |
92 | * | |
93 | ELSEIF (CHPATL.EQ.'DCLOSE') THEN | |
94 | CALL GDCLOS | |
95 | * | |
96 | ELSEIF (CHPATL.EQ.'CHANGEWK') THEN | |
97 | CALL GCHNWK | |
98 | * | |
99 | ELSEIF (CHPATL.EQ.'RESETWK') THEN | |
100 | CALL GRESWK | |
101 | * | |
102 | ELSEIF (CHPATL.EQ.'SSETAT') THEN | |
103 | CALL KUGETC(CHOPT,NCH) | |
104 | IATDEF=CHOPT | |
105 | * | |
106 | ELSEIF (CHPATL.EQ.'SSETVA') THEN | |
107 | CALL KUGETR(RVAL) | |
108 | IVADEF=RVAL | |
109 | * | |
110 | ELSEIF (CHPATL.EQ.'SATT') THEN | |
111 | CALL KUGETC(CHNAME,NCH) | |
112 | CALL KUGETC(CHOPT,NCH) | |
113 | CALL KUGETI(IVAL) | |
114 | CALL GSATT(CHNAME,CHOPT,IVAL) | |
115 | * | |
116 | ELSEIF (CHPATL.EQ.'SCALE') THEN | |
117 | CALL KUGETR(GSCU) | |
118 | CALL KUGETR(GSCV) | |
119 | * | |
120 | ELSEIF (CHPATL.EQ.'COLOR') THEN | |
121 | CALL KUGETI(ICOL) | |
122 | ICOL=-IABS(ICOL) | |
123 | CALL GDCOL(ICOL) | |
124 | * | |
125 | ELSEIF (CHPATL.EQ.'LWID') THEN | |
126 | CALL KUGETI(LW) | |
127 | LW=-IABS(LW) | |
128 | CALL GDLW(LW) | |
129 | * | |
130 | ELSEIF (CHPATL.EQ.'NEXT') THEN | |
131 | CALL HPLI | |
132 | CALL ISELNT(1) | |
133 | CALL IGRNG(20.,20.) | |
134 | * | |
135 | ELSEIF (CHPATL.EQ.'DOPT') THEN | |
136 | CALL KUGETC(CHOPT,NCH) | |
137 | CALL KUGETC(CHPAR,NCH) | |
138 | CALL GDOPT(CHOPT,CHPAR) | |
139 | * | |
140 | ELSEIF (CHPATL.EQ.'SIZE') THEN | |
141 | CALL KUGETR(PLT1) | |
142 | PLT2=PLT1 | |
143 | CALL KUGETR(PLT2) | |
144 | PLTRNX=PLT1 | |
145 | PLTRNY=PLT2 | |
146 | CALL IGRNG(PLT1,PLT2) | |
147 | CALL HPLSET('XSIZ',PLT1) | |
148 | CALL HPLSET('YSIZ',PLT2) | |
149 | * | |
150 | ELSEIF (CHPATL.EQ.'SPERS') THEN | |
151 | CALL KUGETR(DPERS) | |
152 | DPERS=ABS(DPERS) | |
153 | * | |
154 | ELSEIF (CHPATL.EQ.'MAP_COLOR') THEN | |
155 | IADD=0 | |
156 | IF (NPAR.GT.0) THEN | |
157 | 10 CALL KUGETI(IADD) | |
158 | IF (IADD.LT.0.OR.IADD.GT.16) GO TO 10 | |
159 | ENDIF | |
160 | IF (NPAR.GT.1) THEN | |
161 | 20 CALL KUGETI(IVAL) | |
162 | IF (IVAL.LT.1.OR.IVAL.GT.16) GO TO 20 | |
163 | ENDIF | |
164 | IF (IADD.EQ.0) THEN | |
165 | IAD1=1 | |
166 | IAD2=16 | |
167 | ELSE | |
168 | IAD1=IADD | |
169 | IAD2=IADD | |
170 | ENDIF | |
171 | DO 30 I=IAD1,IAD2 | |
172 | IF (NPAR.GT.1) LOOKTB(I)=IVAL | |
173 | WRITE (CHMAIL,'('' COLOR('',I2,'') = '',I2)') I,LOOKTB(I) | |
174 | CALL GMAIL(0,0) | |
175 | 30 CONTINUE | |
176 | ENDIF | |
177 | * | |
178 | 99 END |