.\"##
.\" $XConsortium: p306,v 5.2 94/04/17 20:57:59 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.
.\" 1. Substitute PHIGS Extension function name (in CAPS) for "PNAME" in line be.\"low:
.ds pN SET EDGE COLOUR
.TH "\*(pN" 3P+ "29 February 1991"
.SH NAME
\*(pN \-
create structure element to set the current edge direct colour attribute
.IX "PHIGS Extension Functions" "\*(pN"
.IX "Colour" "SET EDGE COLOUR"
.IX "Edge Attributes" "SET EDGE COLOUR"
.IX "Attributes, Edge Attributes" "SET EDGE COLOUR"
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
.\" 6. Insert C syntax below
void
pset_edge_colr ( colour )
Pgcolr	*colour;	\fIedge colour\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, *, STOP, *)
.SH DESCRIPTION
.SS Purpose
\s-2SET EDGE COLOUR\s+2 creates a structure element to set
the current edge direct colour attribute.
.LP
When the current edge colour Aspect Source Flag (\s-2ASF\s+2) is set to
\s-2INDIVIDUAL\s+2, the current value of
this attribute applies to the following output primitives:
.RS
.ta 0.2i +0.2i +0.2i +0.2i +0.2i +0.2i +0.2i +0.2i
.LP
\(bu
.SM "FILL AREA SET"
.LP
\(bu
.SM "FILL AREA SET 3"
.LP
\(bu
.SM "FILL AREA SET 3 WITH DATA"
.LP
\(bu
.SM "GENERALIZED DRAWING PRIMITIVE (\fIFill Area Set Primitives\fP)"
.LP
\(bu
.SM "GENERALIZED DRAWING PRIMITIVE 3 (\fIFill Area Set Primitives\fP)"
.LP
\(bu
.SM "NON-UNIFORM B-SPLINE SURFACE"
.LP
\(bu
.SM "SET OF FILL AREA SET 3 WITH DATA"
.LP
\(bu
.SM "QUADRILATERAL MESH 3 WITH DATA"
.LP
\(bu
.SM "TRIANGLE STRIP 3 WITH DATA"
.ta
.RE
.SS C Input Parameters
.IP \fIcolour\fP
Edge colour. Pgcolr is defined as:
.ta .5i +\w'union  'u +\w'struct  'u +\w'Pfloat      'u +\w'type;    'u +w\'x;      'u
.nf
.sp .4
typedef struct {
.sp .2
	Pint		 type;		/* indirect, RGB, CIE, HSV, HLS */
	union {
	   Pint		ind;		/* colour table index */
	   struct {
		Pfloat		x;		/* red, hue, etc. */
		Pfloat		y;		/* green, saturation, lightness, etc. */
		Pfloat		z;		/* blue, value, saturation, etc. */
	   } general;
	} val;
} Pgcolr;
.fi
.SS Execution
Depending on the edit mode, a \s-2SET EDGE COLOUR\s+2 element with
the value edge colour in the specified colour model is 
inserted into the open structure after the element pointer or replaces
the element pointed at by the element pointer. The element pointer
is then updated to point to this \s-2SET EDGE COLOUR\s+2 element.
.LP
When the current edge colour \s-2ASF\s+2 is set to
\s-2INDIVIDUAL\s+2, filled area output primitives
that follow in
the structure network are drawn using the current edge colour.
.LP
When the current edge colour \s-2ASF\s+2 is set to \s-2BUNDLED\s+2,
the edge colour is taken from the
workstation extended representation indicated by the current edge index.
In this case, the edge colour
set with \s-2SET EDGE COLOUR\s+2 has no effect.
.LP
The standard \s-2PHIGS\s+2 function \s-2SET EDGE COLOUR INDEX\s+2
is equivalent to calling to \s-2SET EDGE COLOUR\s+2 with type
\s-2INDIRECT\s+2.
.SH ERRORS
.IP 005
Ignoring function, function requires state 
(\s-2PHOP\s+2, \s-2*\s+2, \s-2STOP\s+2, \s-2*\s+2)
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "COLOUR (7P)"
.SM "SET EDGE REPRESENTATION PLUS (3P+)"
.SM "SET EDGE COLOUR INDEX (3P)"
.fi
