Provided by: libncarg-dev_6.4.0-9_amd64 bug

NAME

       gactm - Accumulate (GKS) transformation matrix

DESCRIPTION

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

SYNOPSIS

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

C-BINDING SYNOPSIS

       #include <ncarg/gks.h>

       void gaccum_tran_matrix(const Gtran_matrix t_matrix, const Gpoint  *point,  const  Gvec  *shift,  Gdouble
       angle, const Gvec *scale, Gcoord_switch coord_switch, Gtran_matrix tran_matrix);

DESCRIPTION

       MINP        (Real, Input) - A 2x3 GKS transformation matrix.

       X0          (Real,  Input)  -  An  X  coordinate  value  for a fixed point to be used for the scaling and
                   rotation parts of the output transformation.  X is either in world coordinates or  normalized
                   device coordinates depending on the setting of the argument SW described below.

       Y0          (Real,  Input)  -  A  Y  coordinate  value  for  a fixed point to be used for the scaling and
                   rotation parts of the output transformation.  Y is either in world coordinates or  normalized
                   device coordinates depending on the setting of the argument SW described below.

       DX          (Real,  Input)  -  The  X  component of a shift vector to be used for the scaling part of the
                   output transformation.  DX is either in world coordinates or  normalized  device  coordinates
                   depending on the setting of the argument SW described below.

       DY          (Real,  Input)  -  The  Y  component of a shift vector to be used for the scaling part of the
                   output transformation.  DY is either in world coordinates or  normalized  device  coordinates
                   depending on the setting of the argument SW described below.

       PHI         (Real,  Input)  -  The  rotation  angle,  in radians, to be used for the rotation part of the
                   output transformation.

       FX          (Real, Input) - An X coordinate scale factor to be used in the scaling  part  of  the  output
                   transformation.

       FY          (Real,  Input)  -  A  Y  coordinate scale factor to be used in the scaling part of the output
                   transformation.

       SW          (Integer, Input) - A coordinate switch to indicate whether the values for the  arguments  X0,
                   Y0,  DX,  and DY (described above) are in world coordinates or normalized device coordinates.
                   SW=0 indicates world coordinates and SW=1 indicates normalized device coordinates.

       MOUT        (Real, Output) - A 2x3 array that contains the GKS transformation matrix in a form  that  can
                   be  used  as  input  to  other  GKS  functions  such as GSSGT.  This matrix is constructed by
                   composing the scale, rotate, and shift input, described above, with the original input matrix
                   MINP.

USAGE

       If  world  coordinates  are  used,  the  shift  vector and the fixed point are transformed by the current
       normalization transformation.

       The order in which the transformations are applied is: input matrix, scale, rotate, and shift.

       Elements MOUT(1,3) and MOUT(2,3) are in normalized device coordinates and the other elements of MOUT  are
       unitless.

       GACTM can be used to construct more general transformation matrices than GEVTM.  The most common usage of
       GACTM is to change the order in which the operations of scale, rotate, and shift are  applied  (which  is
       fixed  in GEVTM).  The example below shows how to construct a transformation matrix that shifts first and
       then rotates.

EXAMPLE

       Assuming that the input matrix TIN is initially the identity, the following code

             PI = 3.1415926
             CALL GACTM(TIN,.5,.5,.25,0.,0.,1.,1.,0,TOUT)
             DO 20 I=1,2
               DO 30 J=1,3
                 TIN(I,J) = TOUT(I,J)
          30   CONTINUE
          20 CONTINUE
             CALL GACTM(TIN,.5,.5,0.,0.,45.*PI/180.,1.,1.,0,TOUT)

       would produce a transformation matrix in TOUT that would shift by (.25,0.) first, and then rotate  by  45
       degrees.

ACCESS

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

SEE ALSO

       Online: gevtm, gclsg, gcrsg, gcsgwk, gdsg, gqopsg, gqsgus, gssgt., gaccum_tran_matrix

       Hardcopy: "User's Guide for NCAR GKS-0A Graphics"

COPYRIGHT

       Copyright (C) 1987-2009
       University Corporation for Atmospheric Research
       The use of this Software is governed by a License Agreement.