PEXtNonUniformScale(3PEXt)

NAME
PEXtNonUniformScale, PEXtUniformScale, PEXtNonUniformScale3, PEXtUniformScale3 — compose a scale matrix as a local transform structure element

SYNOPSIS
#include <PEXt/PEXt.h>
#include <PEXt/Structure.h>

void PEXtNonUniformScale (sfx, sfy, composition)
    Pfloat    sfx, sfy;
    Pcompose_type    composition;

void PEXtUniformScale (sf, composition)
    Pfloat    sf;
    Pcompose_type    composition;

void PEXtNonUniformScale3 (sfx, sfy, sfz, composition)
    Pfloat    sfx, sfy, sfz;
    Pcompose_type    composition;

void PEXtUniformScale3 (sf, composition)
    Pfloat    sf;
    Pcompose_type    composition;

  Required PHIGS Operating States
(PHOP, *, STOP, *)

DESCRIPTION
These convenience procedures create a scale matrix of the given amount using the PHIGS functions pscale and pscale3. The resulting matrix appears in the current structure as a SET LOCAL TRANSFORMATION 3 (or SET LOCAL TRANSFORMATION) structure element with the given composition into the currently open structure. If the current edit mode is set to PREPLACE, then the matrix replaces the current structure element. If the current edit mode is set to PINSERT, then the matrix is inserted after the current structure element.

RETURN VALUE
None

BUGS
Because PEXtUniformScale and PEXtUniformScale3 are implemented as macros, the scale factor argument sf should be side-effect free.

SEE ALSO
PEXtRotate(3)
PEXtTranslate(3)
PEXtBuildTran(3)
pscale(3)
pscale3(3)

AUTHOR
Rich Thomson
Design Systems Division
Evans & Sutherland Computer Corporation