1GACTM(3NCARG)                    NCAR GRAPHICS                   GACTM(3NCARG)
2
3
4

NAME

6       GACTM  (Accumulate  transformation  matrix)  - Constructs a GKS segment
7       transformation matrix by starting with an existing matrix and composing
8       it  with a shift vector, a rotation angle, and X and Y scale factors to
9       create a new transformation matrix.  The rotation and scaling are  done
10       with respect to a user-defined fixed point.
11

SYNOPSIS

13       CALL GACTM(MINP,X0,Y0,DX,DY,PHI,FX,FY,SW,MOUT)
14

C-BINDING SYNOPSIS

16       #include <ncarg/gks.h>
17
18       void   gaccum_tran_matrix(const  Gtran_matrix  t_matrix,  const  Gpoint
19       *point, const Gvec *shift,  Gdouble  angle,  const  Gvec  *scale,  Gco‐
20       ord_switch coord_switch, Gtran_matrix tran_matrix);
21

DESCRIPTION

23       MINP        (Real, Input) - A 2x3 GKS transformation matrix.
24
25       X0          (Real,  Input) - An X coordinate value for a fixed point to
26                   be used for the scaling and rotation parts  of  the  output
27                   transformation.   X  is either in world coordinates or nor‐
28                   malized device coordinates depending on the setting of  the
29                   argument SW described below.
30
31       Y0          (Real,  Input)  - A Y coordinate value for a fixed point to
32                   be used for the scaling and rotation parts  of  the  output
33                   transformation.   Y  is either in world coordinates or nor‐
34                   malized device coordinates depending on the setting of  the
35                   argument SW described below.
36
37       DX          (Real,  Input)  -  The  X component of a shift vector to be
38                   used for the scaling part of the output transformation.  DX
39                   is either in world coordinates or normalized device coordi‐
40                   nates depending on the setting of the argument SW described
41                   below.
42
43       DY          (Real,  Input)  -  The  Y component of a shift vector to be
44                   used for the scaling part of the output transformation.  DY
45                   is either in world coordinates or normalized device coordi‐
46                   nates depending on the setting of the argument SW described
47                   below.
48
49       PHI         (Real,  Input) - The rotation angle, in radians, to be used
50                   for the rotation part of the output transformation.
51
52       FX          (Real, Input) - An X coordinate scale factor to be used  in
53                   the scaling part of the output transformation.
54
55       FY          (Real,  Input)  - A Y coordinate scale factor to be used in
56                   the scaling part of the output transformation.
57
58       SW          (Integer, Input) - A coordinate switch to indicate  whether
59                   the  values for the arguments X0, Y0, DX, and DY (described
60                   above) are in world coordinates or normalized device  coor‐
61                   dinates.   SW=0  indicates world coordinates and SW=1 indi‐
62                   cates normalized device coordinates.
63
64       MOUT        (Real, Output) - A 2x3 array that contains the  GKS  trans‐
65                   formation  matrix  in  a  form that can be used as input to
66                   other GKS functions such as GSSGT.   This  matrix  is  con‐
67                   structed  by  composing the scale, rotate, and shift input,
68                   described above, with the original input matrix MINP.
69

USAGE

71       If world coordinates are used, the shift vector and the fixed point are
72       transformed by the current normalization transformation.
73
74       The  order  in  which the transformations are applied is: input matrix,
75       scale, rotate, and shift.
76
77       Elements MOUT(1,3) and MOUT(2,3) are in normalized  device  coordinates
78       and the other elements of MOUT are unitless.
79
80       GACTM  can  be  used  to construct more general transformation matrices
81       than GEVTM.  The most common usage of GACTM is to change the  order  in
82       which  the operations of scale, rotate, and shift are applied (which is
83       fixed in GEVTM).  The example below shows how to construct a  transfor‐
84       mation matrix that shifts first and then rotates.
85

EXAMPLE

87       Assuming  that the input matrix TIN is initially the identity, the fol‐
88       lowing code
89
90             PI = 3.1415926
91             CALL GACTM(TIN,.5,.5,.25,0.,0.,1.,1.,0,TOUT)
92             DO 20 I=1,2
93               DO 30 J=1,3
94                 TIN(I,J) = TOUT(I,J)
95          30   CONTINUE
96          20 CONTINUE
97             CALL GACTM(TIN,.5,.5,0.,0.,45.*PI/180.,1.,1.,0,TOUT)
98
99       would produce a transformation matrix  in  TOUT  that  would  shift  by
100       (.25,0.) first, and then rotate by 45 degrees.
101

ACCESS

103       To use GKS routines, load the NCAR GKS-0A library ncarg_gks.
104

SEE ALSO

106       Online: gevtm, gclsg, gcrsg, gcsgwk, gdsg, gqopsg, gqsgus, gssgt., gac‐
107       cum_tran_matrix
108
109       Hardcopy: "User's Guide for NCAR GKS-0A Graphics"
110
112       Copyright (C) 1987-2009
113       University Corporation for Atmospheric Research
114       The use of this Software is governed by a License Agreement.
115
116
117
118UNIX                              March 1993                     GACTM(3NCARG)
Impressum