.\"##
.\" $XConsortium: p351,v 5.2 94/04/17 20:58:31 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 PATTERN REFERENCE POINT AND VECTORS" 3P "29 February 1991"
.SH NAME
SET PATTERN REFERENCE POINT AND VECTORS \- create structure element to set the current pattern reference point and vectors
.IX "Attributes, Filled Area Interior Attributes" "SET PATTERN REFERENCE POINT AND VECTORS"
.IX "Filled Area Interior Attributes" "SET PATTERN REFERENCE POINT AND VECTORS"
.IX "Pattern Fill" "SET PATTERN REFERENCE POINT AND VECTORS"
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3.25i
.nf
void
pset_pat_ref_point_vecs ( ref_pt, pat_ref_vec )
Ppoint3	*ref_pt;	\fIpattern reference point\fP
Pvec3	pat_ref_vec[2];	\fIdirection vectors; 1=X axis of pattern, 
		2=Y axis of pattern\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, *, STOP, *)
.SH DESCRIPTION
.SS Purpose
.LP
.SM "SET PATTERN REFERENCE POINT AND VECTORS"
creates a structure element
containing a value for the \fIcurrent pattern reference point\fP and
\fIcurrent pattern reference vectors\fP attributes.
When the interior style is
.SM PATTERN,
these attributes apply to the following output primitives:
.ta .5i +1.75i
.nf
	\(bu  \s-2FILL AREA\s+2	\(bu  \s-2NON-UNIFORM B-SPLINE SURFACE\s+2
	\(bu  \s-2FILL AREA 3\s+2	\(bu  \s-2SET OF FILL AREA SET 3 WITH DATA\s+2
	\(bu  \s-2FILL AREA SET\s+2	\(bu  \s-2TRIANGLE STRIP 3 WITH DATA\s+2
	\(bu  \s-2FILL AREA SET 3\s+2	\(bu  \s-2QUADRILATERAL MESH 3 WITH DATA \s+2
	\(bu  \s-2FILL AREA SET 3 WITH DATA\s+2
.fi
.LP
\fBNote:\fP This function places the appropriate data in the
Central Structure Store and in \s-2PEX-SI\s0 archives,
but the structure element is currently ignored during traversal.
.LP
If the current edit mode is \s-2INSERT\s+2, a
.SM "SET PATTERN REFERENCE POINT AND VECTORS"
element is inserted into the currently open
structure after the element pointed to by the current element pointer. If
the edit mode is \s-2REPLACE\s+2, the new element
replaces the element pointed to by the element pointer. In either case, the
element pointer is updated to point to the new element.
.SS C Input Parameters
.IP \fIref_pt\fP
The \fIpattern reference point\fP, in Modelling Coordinates \s-2(MC)\s+2.
The Ppoint3 structure is defined in phigs.h as:
.ta .5i	 +.5i	+.5i   
.nf
.sp .3
typedef struct {
.sp .2
	Pfloat	x; 	/* x coordinate */
	Pfloat	y; 	/* y coordinate */
	Pfloat	z; 	/* z coordinate */
.sp .2
} Ppoint3;
.sp .3
.fi
.IP \fIpat_ref_vec\fP
A pointer to an array of two elements of type Pvec3. Array element 1 is the X axis
of pattern in \s-2MC\s+2. Array element 2 is the Y axis.
The Pvec3 structure is defined in phigs.h as:
.ta .5i +.5i +.75i
.nf
.sp .3
typedef struct {
.sp .2
	Pfloat	delta_x;	/* x magnitude */
	Pfloat	delta_y;	/* y magnitude */
	Pfloat	delta_z;	/* z magnitude */
.sp .2
} Pvec3;
.sp .3
.fi
.SS Execution
When the \s-2SET PATTERN REFERENCE POINT AND VECTORS\s+2 element is traversed,
the current pattern reference point and current pattern reference vectors
entries in the traversal state list are set to the
values contained in this element.  When the interior style
(either individual or bundled, as selected by the current interior style \s-2ASF\s+2)
is set to \s-2PATTERN\s+2, these attributes are used in conjunction with
the current pattern size for the area-defining primitives
that follow in the structure network.
.SH ERRORS
.IP 005
Ignoring function, function requires state (PHOP, *, STOP, *)
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "INQUIRE PATTERN FACILITIES (3P)"
.SM "SET PATTERN REFERENCE POINT (3P)"
.SM "SET PATTERN REPRESENTATION (3P)"
.SM "SET PATTERN SIZE (3P)"
.fi
