Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ psmcv(3P) — PHIGS 1.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

SET MODELLING CLIPPING VOLUME(3P)  —  SUNPHIGS LIBRARY

NAME

SET MODELLING CLIPPING VOLUME − create structure element to set the current modelling clipping volume

SYNOPSIS

C Syntax

void
psetmodelclipvolume ( op, half_spaces )
Pintop;operator
Phalfspacelst∗half_spaces;list of half spaces

FORTRAN Syntax

SUBROUTINE psmcv ( MCLPOP, NMCLHS, MCLPHS )
INTEGERMCLPOPmodelling clipping indicator
INTEGERNMCLHSnumber of modelling clipping
half spaces in list
REALMCLPHS(4, NMCLHS) list of modelling clipping
half spaces

Required PHIGS Operating States

(PHOP, ∗, STOP, ∗)

DESCRIPTION

Purpose

SET MODELLING CLIPPING VOLUME creates a structure element containing the operator and half spaces specified, and places the element in the current structure.  During traversal, this element is used to modify the value of the current modelling clipping volume attribute, which affects all output primitives. 

C Input Parameters

opThe operator that describes the application of the half spaces in this element to the current modelling clipping volume.  Operator values defined in phigs.h are:

PMC_REPLACEReplace
PMC_INTERSECTIntersect

half_spaces
The list of half spaces to store in the element. Phalfspacelst is defined in phigs.h as:

typedef struct {
Pintnumber; /∗ number of half spaces ∗/
Phalfspace∗half_spaces;/∗ list of half spaces ∗/
} Phalfspacelst;

The number is the number of half spaces in the array of Phalfspace elements pointed to by half spaces, as specified by a point, and the normal to the plane containing the point, in the direction of the half space. Phalfspace is defined in phigs.h as:

typedef struct {
Ppointpt;/∗ point ∗/
Pvectornormal;/∗ normal ∗/
} Phalfspace;

Ppoint and Pvector are similar structures, defined by phigs.h:

typedef struct {
Pfloatx;/∗ x coordinate ∗/
Pfloaty;/∗ y coordinate ∗/
} Ppoint;
typedef struct {
Pfloatx;/∗ x magnitude ∗/
Pfloaty;/∗ y magnitude ∗/
} Pvector;

The 2D point and normal vector are expanded to 3D by using z components equal to 0. 

FORTRAN Input Parameters

MCLIPOP
The clipping operator that describes the application of the half spaces in this element to the current modelling clipping volume. Operator values defined in phigs.h are:

PMCREPReplace
PMCINTIntersect

NMCLHS
The number of clipping half spaces in the array MCLPHS. 

MCLPHS
The list of half spaces to store in the element, specified as a 2D.  The first dimension is 4, specifying a point as x and y coordinates, and the normal to the plane containing the point, in the direction of the half space, as x and y magnitudes.  The second dimension is NMCLHS. 

Execution

If the current edit mode is INSERT, a SET MODELLING CLIPPING VOLUME element is inserted into the currently open structure after the element pointed to by the current element pointer. If the edit mode is REPLACE, 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. 

ERRORS

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

SEE ALSO

INQUIRE MODELLING CLIPPING FACILITIES (3P)
SET MODELLING CLIPPING INDICATOR (3P)
RESTORE MODELLING CLIPPING VOLUME (3P)
SET MODELLING CLIPPING VOLUME 3 (3P)

Sun Release 4.0  —  Last change: 28 July 1989

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