This routine creates a new DATA picture aligned with an
existing DATA picture, together with any requested ancillary pictures. On exit, the new
DATA picture is the current picture, and the current PGPLOT viewport corresponds to this
picture.
A FRAME picture is only created if it would contain something other than the DATA picture (this is
assumed to be the case if any ancillary pictures are requested, or if non-zero margins are requested
around the DATA picture). Ancillary pictures are given their requested sizes except that they are
clipped at the bounds of the original current picture. The FRAME picture is also clipped at the bounds
of the original current picture.
CALL KPG1_GDOLD( MARGIN, COMMNT, NP, PNAME,
PSIDE, PSIZE, IPICD, IPICD0, IPICF, IPIC, STATUS )
MARGIN( 4 )
= REAL (Given)
The width of the borders to leave round the DATA picture, given as
fractions of the corresponding dimension of the current picture. These should be supplied in
the order bottom, right, top, left. They may be negative.
COMMNT = CHARACTER
(
) (Given)
A comment to store with the new pictures added to the AGI database. This
will usually by an indication of the application being run (e.g. KAPPA_DISPLAY).
NP = INTEGER (Given)
The number of extra pictures to be included in the FRAME
picture (the DATA picture itself is not included in this list). Margins are left round the
DATA picture with widths given by MARGIN. Any extra pictures are placed outside these
margins, in positions described by PSIDE and PSIZE.
PNAME( NP ) = CHARACTER
(
) (Given)
The names to store in the AGI database with the NP extra pictures.
PSIDE( NP ) = CHARACTER
1
(Given)
Each element of this array should be one of L, R, T or B. It indicates which side of the FRAME
picture an extra picture is to be placed. For Left and Right, the extra picture occupies the full height of
the DATA picture, margins, and any previously created extra pictures. The picture is placed at the far
Left or Right of all previously created pictures. For Top or Bottom, the extra picture occupies
the full width of the DATA picture, margins, and any previously created extra pictures.
The picture is placed at the top or bottom of all previously created pictures. Ignored if
NP is zero.
PSIZE( NP ) = REAL (Given)
The size of each extra picture. For Left and
Right pictures, this is the width of the picture, and the value is given as a fraction of the
width of the current picture. For Top and Bottom pictures, it is the height of the picture,
and it is given as a fraction of the height of the current picture. Ignored if NP is zero.
IPICD = INTEGER (Given)
An AGI identifier for the existing DATA picture.
IPICD0 =
INTEGER (Returned)
An AGI identifier for the new DATA picture.
IPICF = INTEGER
(Returned)
An AGI identifier for the FRAME picture. Thw world cooridnate system is
inherited form the current picture on entry. If no FRAME picture was created, then an AGI
identifier for the current picture is returned.
IPIC( NP ) = INTEGER (Returned)
An array of
AGI identifiers corresponding to the extra pictures requested in ZSIDE and PSIZE. The
world co-ordinate system for each picture is inherited from the FRAME picture. The actual
size of a picture may be less than the requested size if there is insufficient room left in the
FRAME picture to give it its requested size. Identifiers for pictures which would have zero
size (i.e. fall completely outside the FRAME picture) are returned equal to -1, but no error
is reported.
STATUS = INTEGER (Given and Returned)
The global status.