pset_local_tran(3g) — Subroutines
Name
pset_local_tran − Resets the local modeling transformation by specifying a 3 x 3 transformation matrix and a composition type.
Operating States: PHOP, ∗, STOP, ∗
PHIGS standard function
Creates a structure element
Syntax
void pset_local_tran (
Pmatrix xform, /∗ (I) Transformation matrix ∗/
Pcompose_type compose_type /∗ (I) Composition type ∗/
)
Data Structures
typedef Pfloat Pmatrix[3][3];
typedef enum {
PTYPE_PRECONCAT, /∗ matrix preconcatenate
(local <- local ∗ matrix) ∗/
PTYPE_POSTCONCAT, /∗ matrix postconcatenate
(local <- matrix ∗ local) ∗/
PTYPE_REPLACE /∗ matrix replace
(local <- matrix) ∗/
} Pcompose_type;
Description
pset_local_tran resets the local modeling transformation for the open structure by specifying a transformation matrix and a composition type. Depending on the current edit mode, this function either inserts the new structure element (that contains the value of the transformation matrix) directly after the element indicated by the pointer or replaces the element indicated by the pointer. The pointer then points to the new set local transformation element.
Initially, the local modeling transformation for a structure is the value of the identity matrix. The pset_local_tran function resets this value by inserting a local modeling transformation into the open structure.
The element has the following effects during structure traversal:
•The current local modeling transformation entry in the PHIGS traversal state list is combined with the specified 3 x 3 transformation matrix, after expanding the 3 x 3 matrix into a 4 x 4 matrix (see the hardcopy or Bookreader version of the documentation for details).
The composition method used depends on the specified value of the enumerated type: PTYPE_PRECONCAT, PTYPE_POSTCONCAT, or PTYPE_REPLACE.
•The current local modeling transformation entry in the PHIGS traversal state list is set to the result of the matrix composition. Digital PHIGS uses this value when creating subsequent output primitives.
If Digital PHIGS is in immediate mode, it performs this function immediately, but the function does not create a structure element.
See Also
pbuild_tran_matrix
pset_global_tran
pset_local_tran3
pset_view_rep
ptran_point