.\"## .\" $XConsortium: p325,v 5.2 94/04/17 20:58:12 rws Exp $ .\"## .\"## $XMCOPY .\"## Copyright (c) 1990, 1991 by Sun Microsystems, Inc. .\"## .\"## All Rights Reserved .\"## .\"## Permission to use, copy, modify, and distribute this software and its .\"## documentation for any purpose and without fee is hereby granted, .\"## provided that the above copyright notice appear in all copies and that .\"## both that copyright notice and this permission notice appear in .\"## supporting documentation, and that the name of Sun Microsystems, .\"## not be used in advertising or publicity .\"## pertaining to distribution of the software without specific, written .\"## prior permission. .\"## .\"## SUN MICROSYSTEMS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, .\"## INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO .\"## EVENT SHALL SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR .\"## CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF .\"## USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR .\"## OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR .\"## PERFORMANCE OF THIS SOFTWARE. .TH "SET HLHSR MODE" 3P "29 February 1991" .SH NAME SET HLHSR MODE \- enable or disable hidden line and hidden surface removal on a workstation .IX "HLHSR" "SET HLHSR MODE" .IX "Z-buffering" "SET HLHSR MODE" .IX "Hidden Line/Hidden Surface Removal" "SET HLHSR MODE" .SH SYNOPSIS .SS C Syntax .ft B .ta 1.25i 3i .nf void pset_hlhsr_mode ( ws, mode ) Pint ws; \fIworkstation identifier\fP Pint mode; \fIHLHSR mode\fP .fi .ft R .SS Required PHIGS Operating States (PHOP, WSOP, *, *) .SH DESCRIPTION .SS Purpose The \s-2SET HLHSR MODE\s+2 requests a certain Hidden Line and Hidden Surface Removal (\s-2HLHSR\s+2) mode of the workstation. The workstation's current \s-2HLHSR\s+2 mode enables or disables \s-2HLHSR\s+2 for a workstation. The current \s-2HLHSR\s+2 identifier from the structure network is used in conjunction with the \s-2HLHSR\s+2 mode on the workstation during traversal. .SS C Input Parameters .IP \fIws\fP The identifier of the workstation whose \s-2HLHSR\s+2 mode is being set. .IP \fImode\fP The \s-2HLHSR\s+2 mode value. Presently defined values are: .nf .sp .ta .5i +\w'0 'u +\w'PHIGS_HLHSR_MODE_LINE_ONLY 'u 0 PHIGS_HLHSR_MODE_NONE \fIDisable Z-buffering\fP 1 PHIGS_HLHSR_MODE_ZBUFF \fIEnable Z-buffering\fP 2 PHIGS_HLHSR_MODE_PAINTERS 3 PHIGS_HLHSR_MODE_SCANLINE 4 PHIGS_HLHSR_MODE_LINE_ONLY .sp .fi .SS Execution If the requested \s-2HLHSR\s+2 mode value is supported on the specified workstation, then \s-2SET HLHSR MODE\s+2 immediately sets the requested \s-2HLHSR\s+2 mode entry in the PHIGS workstation state list to the specified mode. The effect of calling \s-2SET HLHSR MODE\s+2 is not visible until the \fIrequested\fP \s-2HLHSR\s+2 mode replaces the \fIcurrent\fP \s-2HLHSR\s+2 mode. The time at which this occurs depends on the workstation's display update state. .LP This assignment is performed immediately and the \s-2HLHSR\s+2 update state is set to \fINot Pending\fP if any one of the following is true: .sp .5v .in +0.5i .ta +0.2i .ti -0.2i \(bu The workstation display update state allows update. .sp .5v .ti -0.2i \(bu The workstation modification mode is any value other than \fINo Immediate Visual Effect\fP, and the dynamic modification accepted for \s-2HLHSR\s+2 mode entry in the workstation description table is set to \fIImmediate\fP. .sp .5v .ti -0.2i \(bu The \fIdisplay space empty\fP status in the workstation state list is \s-2EMPTY\s+2. .LP Otherwise, the \s-2HLHSR\s+2 update state is set to \fIPending\fP and the requested \s-2HLHSR\s+2 mode will not replace the current \s-2HLHSR\s+2 mode until the next time the workstation is updated. The \s-2HLHSR\s+2 update state will be set to \fINot Pending\fP at that time. .LP During traversal, the workstation's current \s-2HLHSR\s+2 mode entry and the primitive's current \s-2HLHSR\s+2 identifier attribute are both checked. .SH ERRORS .IP 003 Ignoring function, function requires state (\s-2PHOP, WSOP, *, *\s+2) .IP 054 Ignoring function, the specified workstation is not open .IP 059 Ignoring function, the specified workstation does not have output capability (that is, the workstation category is neither \s-2OUTPUT\s+2, \s-2OUTIN\s+2, nor \s-2MO\s+2) .IP 111 Ignoring function, the specified \s-2HLHSR\s+2 mode is not available on the specified workstation .SH SEE ALSO .nf .IP .ta 0.5i .SM "SET HLHSR IDENTIFIER (3P)" .SM "INQUIRE HLHSR MODE (3P)" .fi