Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ psgir(3P+) — PHIGS 1.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

SET GENERAL INTERIOR REPRESENTATION(3P+)  —  MISC. REFERENCE MANUAL PAGES

NAME

SET GENERAL INTERIOR REPRESENTATION − set a general interior representation on a workstation

SYNOPSIS

C Syntax

void
psetgenintrep ( wsid, index, type, record )
Pintwsid;workstation identifier
Pintindex;general interior index
Pinttype;general interior type
Pgisrec∗record;data record

FORTRAN Syntax

SUBROUTINE psgir ( WKID, INDEX, TYPE, LDR, DATREC )
INTEGERWKIDworkstation identifier
INTEGERINDEXgeneral interior index
INTEGERTYPEgeneral interior type
INTEGERLDRdimension of data record array
CHARACTER∗80DATREC(LDR) data record

Required PHIGS Operating States

(PHOP, WSOP, ∗, ∗)

DESCRIPTION

Purpose

SET GENERAL INTERIOR REPRESENTATION sets a general interior representation in a workstation state list. 

This is a SunPHIGS Extension function based on PHIGS+ and is not part of the PHIGS standard. 

C Input Parameters

All of the following data types are predefined in phigs.h. 

wsidThe identifier of the workstation for which the representation is being set. 

indexThe index of the entry being set. 

typeThe general interior type.  Predefined values are defined as:

1PGI_ISOPARAMETRIC_CURVES

See the Execution section below for a description of their meaning and the corresponding description of the data record contents. 

recordA pointer to a Pgisrec structure containing the data to use when applying the general interior type.  See the Execution section below for a description of the data record contents corresponding to the specified type. 

Pgisrec is defined as:

typedef union {
Pgis0001recgis1_datarec;/∗ isoparametric curves ∗/
} Pgisrec;

Pgis0001rec is defined as:

typedef struct {
Pinterstyleintstyle;/∗ interior type, hollow, solid, or empty only ∗/
Pcurveplacementcurve_placement;/∗ curve placement ∗/
Pintucount;/∗ curve count in the u dimension ∗/
Pintvcount;/∗ curve count in the v dimension ∗/
} Pgis0001rec;

Pinterstyle is defined as:

typedef enum {
PHOLLOW,Hollow
PSOLID,Solid
PPATTERN,(Invalid Value for this General Type)
PHATCH,(Invalid Value for this General Type)
PEMPTY,Empty
PGENERAL(Invalid Value for this General Type)
} Pinterstyle;

Pcurveplacement is defined as:

typedef enum {
PCP_UNIFORM = 0,
PCP_NON_UNIFORM = 1
} Pcurveplacement;

FORTRAN Input Parameters

All of the following data types are predefined in phigs77.h. 

WKIDThe identifier of the workstation for which the general interior representation is being set. 

INDEX
The index of the entry being set.

TYPEThe general interior type.  Predefined values are defined as:

1PGIIPCIsoparametric Curves

LDRThe dimension of the data record array, DATREC . 

DATREC(LDR)
The data record is packed by PACK DATA RECORD.  The contents depend on the interior type specified:

Isoparametric Curves, Type 1

ILThe number of integers = 4. 

IA(1) = the interior style.  Valid values are defined as:

0PHOLLOHollow
1PSOLIDSolid
4PISEMPEmpty

IA(2) = the curve placement.  Valid values are defined as:

0PUNIFUniform
1PNUNIFNon-uniform

IA(3) = the curve count for the u dimension. 

IA(4) = the curve count for the v dimension. 

RLThe number of reals = 0. 

SLThe number of strings = 0. 

Execution

SET GENERAL INTERIOR REPRESENTATION associates the specified general interior type and data with the specified index in a workstation general interior table.  The general interior table contains information used to display area-defining output primitives when the current interior style is set to General.  The interior style is set by the SET INTERIOR STYLE structure element.  The general interior table entry used is controlled by the SET INTERIOR INDEX structure element, which is also used as an index into the pattern and hatch-style tables when interior style is set to those styles. 

General interior table entries contain a type field that specifies the general interior type.  The meaning of these types is as follows:

Isoparametric Curves
The interior is filled using the interior style contained within the data record.  Isoparametric lines are displayed along parametric surfaces (fill areas are not parametric surfaces).

The data record contains four values that define how the interior of the primitive is to be rendered:

The first value specifies how the interior of the primitive is to be filled.  The defined fill styles are the standard interior styles: Hollow, Solid, and Empty. 

The second value specifies how the isoparametric lines are to be placed on the surface.  Defined placements are:

Uniform
Isoparametric curves are evenly spaced across the parameter range of the surface.  The u and v count parameters specify the total number of curves to be drawn between the parameter limits of the surface.  Curves are also drawn at the parameter limits. 

Non-uniform
Isoparametric curves are evenly spaced between knot values. The u and v count parameters specify the total number of curves to be drawn between the knots.  Curves are also drawn at the knot values.  If the surface being rendered has no knots, curve placement defaults to Uniform. 

The u and v curve count values define the number of isoparametric curves to be drawn in addition to the parametric boundaries or knot lines.  The values must be greater than zero.  The isoparametric curves are rendered using the polyline attributes and the surface approximation criteria to control tessellation.  The isoparametric curves have higher visual priority than the filled interior, but lower priority than the edges of the surface. 

If trimming curves are specified, the isoparametric curves are only displayed within the interior as defined by the trimming curves. 

ERRORS

003Ignoring function, function requires state (PHOP, WSOP, ∗, ∗)

054Ignoring function, the specified workstation is not open

059Ignoring function, the specified workstation does not have output capability

103Ignoring function, setting this bundle table entry would exceed the maximum number of entries allowed in the workstation bundle table

110Ignoring function, the specified colour model is not available on the workstation

305Ignoring function, content of item data record is invalid for the specified item type

612Ignoring function, the general interior index is less than one

613Ignoring function, the specified general interior type is not supported on this workstation

SEE ALSO

INQUIRE GENERAL INTERIOR FACILITIES (3P+)
INQUIRE GENERAL INTERIOR REPRESENTATION (3P+)
INQUIRE PREDEFINED GENERAL INTERIOR REPRESENTATION (3P+)
SET INTERIOR STYLE (3P+)

Sun Release 4.0  —  Last change: 7 July 1989

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026