Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pcompose_tran_matrix(3g) — PHIGS 5.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

pcompose_tran_matrix(3g)  —  Subroutines

Name

pcompose_tran_matrix − Returns a 2D homogeneous transformation matrix. 

Operating States: PHOP, ∗, ∗, ∗
PHIGS standard function

Syntax

void pcompose_tran_matrix (
  Pmatrix        matrix_in,      /∗ (I) Transformation matrix ∗/
  const Ppoint  ∗pt,             /∗ (I) Fixed point ∗/
  const Pvec    ∗shift,          /∗ (I) Shift vector ∗/
  Pfloat         angle,          /∗ (I) Rotation angle, in radians ∗/
  const Pvec    ∗scale,          /∗ (I) Scale factor vector ∗/
  Pint          ∗error_ind,      /∗ (O) Error indicator ∗/
  Pmatrix        matrix_out      /∗ (O) Modified transformation matrix ∗/
)

Data Structures

typedef Pfloat Pmatrix[3][3];
typedef struct {
    Pfloat      x;      /∗ x coordinate ∗/
    Pfloat      y;      /∗ y coordinate ∗/
} Ppoint;
typedef struct {
    Pfloat     delta_x;    /∗ delta x value ∗/
    Pfloat     delta_y;    /∗ delta y value ∗/
} Pvec;

Description

pcompose_tran_matrix returns a two-dimensional (3 x 3) homogeneous transformation matrix.  Digital PHIGS multiplies the input matrix (A) times the resultant transformation matrix (R) from the specified fixed point, shift, scale values, and rotations.   The result is A x R.  The order of the transformation is as follows:

1Scale (relative to the specified fixed point)

2Rotate (relative to the specified fixed point)

3Shift (move)

  To store a matrix in a structure element, you must pass it to the pset_local_tran or pset_global_tran function. 

See Also

pbuild_tran_matrix
pcompose_matrix
pcompose_tran_matrix3
protate
pscale
pset_global_tran
pset_local_tran
ptranslate

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026