Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ generalized_drawing_primitive_3_-13(3P) — PHIGS 1.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

GENERALIZED DRAWING PRIMITIVE 3 -13(3P)  —  SUNPHIGS LIBRARY

NAME

GENERALIZED DRAWING PRIMITIVE 3 -13 − create 3D GDP annotation elliptical arc close 3

SYNOPSIS

C Syntax

void
pgdp3 ( num_points, points, gdp3_id, gdp_data )
Pintnum_points;number of points
Ppoint3∗points;array of points
Pintgdp3_id;gdp function identifier
Pgdprec3∗gdp_data;data record pointer

FORTRAN Syntax

SUBROUTINE pgdp3 ( N, PXA, PYA, PZA, PRIMID, LDR, DATREC )
INTEGERNnumber of points (>= 0)
REALPXA(∗), PYA(∗), PZA(∗) coordinates of points (MC)
INTEGERPRIMIDGDP 3 identifier
INTEGERLDRdimension of data record array
CHARACTER∗80DATREC(LDR) data record

Required PHIGS Operating States

(PHOP, ∗, STOP, ∗)

DESCRIPTION

Purpose

GENERALIZED DRAWING PRIMITIVE 3 -13 creates the 3D annotation elliptical arc close 3 GDP structure element. 

C Input Parameters

num_points
Number of points passed in the points parameter. 

pointsA pointer to a list num_points long of Ppoint3 structures containing x, y, and z values in Modelling Coordinates (MC).  Ppoint3 is defined in phigs.h as:

typedef struct {
Pfloatx;/∗ x coordinate ∗/
Pfloaty;/∗ y coordinate ∗/
Pfloatz;/∗ z coordinate ∗/
} Ppoint3;

gdp3_id
The function identifier for this generalized drawing primitive is PUGDP_ANNOT_ELLP_ARC_CLOSE3, which is defined in phigs.h to be -13. 

gdp_data
A pointer to a Pgdprec3 union, ugdp13_datarec, containing the information needed to perform the function specified by gdp_id.  Pugdp0013rec3 is defined in phigs.h as:

typedef struct {
Ppoint3center;/∗ center point ∗/
Pvector3major;/∗ major axis ∗/
Pvector3minor;/∗ minor axis ∗/
Pfloatst_ang;/∗ start angle in radians ∗/
Pfloatend_ang;/∗ end angle in radians ∗/
Pintcls_type;/∗ close type ∗/
} Pugdp0013rec3;           /∗ annotation elliptical arc close 3 ∗/

The center component specifies the center of the annotation elliptical arc close 3.  It is a structure containing x and y coordinates specified in MC.  The major component specifies the length and direction of the major axis relative to the center point.  The minor component specifies the minor axis.  The x and y magnitudes of the major and minor axes of the annotation ellipse are specified in MC.  The st_ang component specifies the start angle of the elliptical arc close.  The end_ang component specifies the end angle of the elliptical arc close.  The angles are specified in radians in a counter-clockwise direction with the Ellipse Local Coordinate (ELC) system’s positive x axis as the origin.  The cls_type component is either PARC_CLOSE_PIE or PARC_CLOSE_CHORD.  If the close type is pie, the pie sector is defined by the elliptical arc, the center point, the starting point, and the ending point.  If the close type is chord, the segment is defined by the elliptical arc and the chord from the starting point to the ending point. 

FORTRAN Input Parameters

NNumber of points passed in the PXA, PYA, and PZA arrays. 

PXAAn array of N real values containing x coordinates in MC. 

PYAAn array of N real values containing y coordinates in MC. 

PZAAn array of N real values containing z coordinates in MC. 

PRIMID
The function identifier for this generalized drawing primitive is PUGDPAELLPARCCL3, which is defined in phigs77.h to be -13. 

LDRThe dimension of DATREC (returned by the PACK DATA RECORD subroutine). 

DATREC
A  GDP 3 data record packed by the PACK DATA RECORD subroutine containing the information needed to perform the function specified by PRIMID. 

The arguments passed to PACK DATA RECORD when PRIMID = PUGDPAELLPARCCL3 should be as follows:

ILThe number of integers = 1. 

IAContains the arc close type, which is either 0 (PARCCLPIE) or 1 (PARCCLCHORD). 

RLThe number of real values = 9. 

RAContains an array of RL real values.  Element 1 is the x coordinate of the center of the annotation elliptical arc close 3 in MC.  Element 2 is the y coordinate of the center of the annotation elliptical arc close 3 in MC.  Element 3 is the z coordinate of the center of the annotation elliptical arc close 3 in MC.  Element 4 is the x component of the elliptical arc close 3 major axis in MC.  Element 5 is the y component of the elliptical arc close 3 major axis in MC.  Element 6 is the x component of the elliptical arc close 3 minor axis in MC.  Element 7 is the y component of the elliptical arc close 3 minor axis in MC.  Element 8 is the start angle of the annotation elliptical arc close 3 in radians.  Element 9 is the end angle of the annotation elliptical arc close 3 in radians. 

SLThe number of strings = 0. 

Execution

An annotation elliptical arc close 3 is a planar area defined by a center point, a major axis, a minor axis, a start angle, and an end angle.  The plane on which annotation elliptical arc close 3 lies is parallel to the z = 0 plane.  The origin of the ELC system is located at the center point.  The horizontal and vertical axes of the Circle Local Coordinate (CLC) system are defined by the major and minor axes respectively.  The current values of all fill area set attributes will be applied to the annotation elliptical arc close 3 when it is drawn.  Annotation elliptical close 3 is not affected by the current curve approximation criteria. 

The center point of the annotation elliptical arc 3 is specified in MC.  The major and minor axes of the annotation elliptical arc close 3 are specified in ELC.  The start and end angles are specified in radians with the ELC positive x axis as the origin.  At traversal, all transformations affect the center point, but only the workstation transformation affects the other parameters of the annotation elliptical arc close 3.  An annotation elliptical arc close 3 greater than 360 degrees is drawn as a filled annotation ellipse 3. 

The array of points passed to this subroutine in addition to the GDP data record is not used by the annotation elliptical arc close 3 GDP. 

Attributes Applied

The attributes listed below are used to display the GENERALIZED DRAWING PRIMITIVE 3 -13 structure element. The Aspect Source Flags (ASFs) tell where to access the output display attributes.  These attributes can come directly from the traversal state list, or they can be accessed indirectly, using the appropriate index in the traversal state list and the corresponding bundled representation in the workstation state list. 

interior colourinterior colour index ASF
interior styleinterior style ASF
interior style indexinterior style index ASF
interior index
edge colouredge colour index ASF
edge flagedge flag ASF
edgetypeedgetype ASF
edgewidth scale factoredgewidth scale factor ASF
edge index
depth cue index
name set

ERRORS

005Ignoring function, function requires state (PHOP, ∗, STOP, ∗)

SEE ALSO

GENERALIZED DRAWING PRIMITIVE 3 (3P)
SET CURVE APPROXIMATION CRITERIA (3P+)
See Edge Attributes in Index
See Interior Attributes in Index

Sun Release 4.0  —  Last change: 27 July 1989

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