Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pcompose_tran_matrix3(3g) — PHIGS 5.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

pcompose_tran_matrix3(3g)  —  Subroutines

Name

pcompose_tran_matrix3 − Returns a 3D homogeneous transformation matrix. 

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

Syntax

void pcompose_tran_matrix3 (
  Pmatrix3         matrix_in,    /∗ (I) Transformation matrix ∗/
  const Ppoint3   ∗pt,           /∗ (I) Fixed point ∗/
  const Pvec3     ∗shift,        /∗ (I) Shift vector ∗/
  Pfloat           x_angle,      /∗ (I) x rotation angle, in radians ∗/
  Pfloat           y_angle,      /∗ (I) y rotation angle, in radians ∗/
  Pfloat           z_angle,      /∗ (I) z rotation angle, in radians ∗/
  const Pvec3     ∗scale,        /∗ (I) Scale factor vector ∗/
  Pint            ∗error_ind,    /∗ (O) Error indicator ∗/
  Pmatrix3         matrix_out    /∗ (O) Modified transformation matrix ∗/
)

Data Structures

typedef Pfloat Pmatrix3[4][4];
typedef struct {
    Pfloat      x;      /∗ x coordinate ∗/
    Pfloat      y;      /∗ y coordinate ∗/
    Pfloat      z;      /∗ z coordinate ∗/
} Ppoint3;
typedef struct {
    Pfloat     delta_x;    /∗ delta x value ∗/
    Pfloat     delta_y;    /∗ delta y value ∗/
    Pfloat     delta_z;    /∗ delta z value ∗/
} Pvec3;

Description

pcompose_tran_matrix3 returns a three-dimensional (4 x 4) 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_tran3 or pset_global_tran3 function. 

See Also

pbuild_tran_matrix3
pcompose_matrix3
pcompose_tran_matrix
protate_x
protate_y
protate_z
pscale3
pset_global_tran3
pset_local_tran3
ptranslate3

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