pset_ws_vp(3g) — Subroutines
Name
pset_ws_vp − Resets the workstation transformation according to 2D viewport limits.
Operating States: PHOP, WSOP, ∗, ∗
PHIGS standard function
Syntax
void pset_ws_vp (
Pint wsid, /∗ (I) Workstation identifier ∗/
const Plimit ∗viewport /∗ (I) Workstation viewport limits, in
device coordinates ∗/
)
Data Structures
typedef struct {
Pfloat xmin; /∗ x minimum ∗/
Pfloat xmax; /∗ x maximum ∗/
Pfloat ymin; /∗ y minimum ∗/
Pfloat ymax; /∗ y maximum ∗/
} Plimit;
Description
pset_ws_vp resets the workstation transformation on the specified workstation. (See Getting Started with DEC PHIGS for information about workstation transformations and the coordinate systems comprising the transformation pipeline.)
You specify two-dimensional viewport limits within device coordinate space in the order XMIN, XMAX, YMIN, YMAX. The XMIN and YMIN values must be less than the XMAX and YMAX values, respectively. Digital PHIGS sets the ZMIN value to 0 and sets the ZMAX value to the maximum display space size in z.
The pset_ws_vp function sets the x and y components of the requested workstation viewport entry in the workstation state list to the specified values. Initially, only the requested entry is set, because workstation transformation may be deferred. (See the pupd_ws function.)
When Digital PHIGS updates the workstation, it resets the current workstation viewport entry in the workstation state list as influenced by the values of these entries:
•The dynamic modification accepted (DMA) for workstation transformation entry in the workstation description table (where IMM indicates that all picture changes of the specified category can be performed immediately)
•The display space empty (DSE) entry in the workstation state list
•The workstation transformation update state entry in the workstation state list
The effects are defined in the following table:
DMA DSE Result
------------------------------------------------------------------------
IMM N/A The current workstation viewport entry is set to the
specified value, and the workstation transformation
update state entry is set to NOTPENDING.
N/A EMPTY The current workstation viewport entry is set to the
specified value, and the workstation transformation
update state entry is set to NOTPENDING.
Not Not The current workstation viewport entry is unchanged,
IMM EMPTY and the workstation transformation update state entry
is set to PENDING.
------------------------------------------------------------------------
The z-components of the requested and current workstation window entries remain unchanged.
The workstation transformation is an isotropic transformation. Therefore, if the workstation window and the workstation viewport do not have the same aspect ratio, the workstation viewport is not fully utilized.
The default workstation viewport is the maximum display space of the workstation.
See Also
pinq_disp_space_size
pinq_ws_tran
pset_ws_vp3
pset_ws_win
pupd_ws