5 * Revision 1.1.1.1 1995/10/24 10:20:19 cernlib
9 #include "geant321/pilot.h"
10 *CMZ : 3.21/02 29/03/94 15.41.25 by S.Giani
12 SUBROUTINE GDAHIT (X,Y,Z,ISYMB,SIZSYM)
14 C. ******************************************************************
16 C. * Draw an HIT point at (X,Y,Z) *
18 C. * The hit belongs to track -ITR3D (in common GCDRAW) *
19 C. * if GDAHIT is called from GDHITS or GDCHIT, otherwise *
20 C. * it belongs to track ITRA (in common GCKINE) *
21 C. * if GDAHIT is called directly from user hit routines. *
23 C. * The following characters may be chosen : *
24 C. * ISYMB = -1 hardware character (fast), *
25 C. * = 0 crosses X by TVDRAW (default), *
26 C. * (size = SIZSYM in cm, default = 0.1), *
27 C. * = 840 characters by HPLSOF *
28 C. * . according to the table p. 25 *
29 C. * . of the HPLOT manual *
30 C. * 853 (size = SIZSYM in cm) *
31 C. * (844,854 white, black asterisk * in addition). *
33 C. * ==>Called by : <USER>, GDCHIT, GDHITS *
34 C. * Authors : R.Brun, P.Zanarini ********** *
36 C. ******************************************************************
38 #include "geant321/gcdraw.inc"
39 #include "geant321/gckine.inc"
40 CHARACTER*4 LSYMB(10),CHTEXT
41 DIMENSION HITS(3),UU(2),VV(2),JSYMB(10)
42 SAVE JSYMB,LSYMB,IFIRST,IOFF
43 DATA JSYMB/ 840 , 841 , 842 , 843 , 844
44 +, 850 , 851 , 852 , 853 , 854 /
45 DATA LSYMB/'"<0$','"<1$','"<2$','"<3$','"<4$'
46 +, '">0$','">1$','">2$','">3$','">4$'/
49 C. ------------------------------------------------------------------
53 CALL UCTOH('OFF ',IOFF,4,4)
64 C Find mode of drawing
67 IF (ISYMB.NE.-1) KSYMB=IUCOMP(ISYMB,JSYMB(1),10)
68 IF (KSYMB.GT. 0) CALL UCTOH(LSYMB(KSYMB),MSYMB,4,4)
70 IF (SSYMB.EQ.0.) SSYMB=0.1
72 C If THRZ option is set on (R-Z projection) and
73 C the cut is lateral (vertical or horizontal) then :
74 C if ITR3D is not set by GDHITS or GDCHIT
75 C then use -ITRA from common /GCKINE/
76 C else do not modify ITR3D already set
78 IF (ITHRZ.NE.IOFF) THEN
79 IF (ICUT.EQ.1.OR.ICUT.EQ.2) THEN
80 IF (ITR3D.EQ.0) ITR3D=-ITRA
88 CALL GDFR3D(HITS,1,U,V)
90 CM Short circuit in case of GMR
92 IF ( IGMR .NE. 0 ) GO TO 999
97 C ' ' for hardware points, or 'x' for hardware crosses
101 ELSE IF (KSYMB.GT.0) THEN
103 C soft-characters 840...854 (see above)
106 CALL UHTOC(MSYMB,4,CHTEXT,4)
107 CALL GDRAWT(U,V,CHTEXT,SSYMB,0.,1,0)
111 C default crosses of size SSYMB cm