DCSKLB(3g) — Subroutines
Name
DCSKLB − Causes traversal to skip to the next element after the specified label if the test succeeds.
Operating States: PHOP, ∗, STOP, ∗
Digital PHIGS extension function
Creates a structure element
Syntax
DCSKLB (LABEL, METHOD, LDR, DATREC)
Argument Data Type Access Description
---------------------------------------------------------------------------
LABEL Integer Read Label identifier
METHOD Integer Read Test method
LDR Integer Read Length of the data record
DATREC Array of Read Test data record
character ∗80
---------------------------------------------------------------------------
Constants
Defined Argument Constant Description
---------------------------------------------------------------------------
METHOD PTMTAF Always fail.
PTMTAS Always succeed.
PTMTE3 This method contains a rectangular
parallelepiped, a relation, and a
threshold. Digital PHIGS compares the
maximum of the differences between the
minimum and maximum x, y, and z values
against the threshold, using the
specified relation. If the relationship
is satisfied, the test is successful.
PTMTE This method contains a rectangle, a
relation, and a threshold. Digital PHIGS
compares the maximum of the differences
between the minimum and maximum x and y
values against the threshold, using the
specified relation. If the relationship
is satisfied, the test is successful.
PTMBD3 This method contains a description of a
test object and a clip condition. The
test determines if the object will be
clipped by Digital PHIGS. If the clip
condition is satisfied, the test is
successful.
PTMBD This method contains a description of a
test object and a clip condition. The
test determines if the object will be
clipped by Digital PHIGS. If the clip
condition is satisfied, the test is
successful.
PTMNMS This method compares the specified filter
against the current name set. If the
result matches the specified filter
condition, the test is successful.
PTMAIA This method compares the specified
application attribute to the threshold,
using the specified relation. If the
relationship is satisfied, the test is
successful. Tests against undefined
application attributes always fail.
PTMARA This method compares the specified
application attribute to the threshold,
using the specified relation. If the
relationship is satisfied, the test is
successful. Tests against undefined
application attributes always fail.
Test relations PTRLEQ Equal to.
and comparisons
PTRLNE Not equal to.
PTRLGT Greater than.
PTRLLT Less than.
PTRLGE Greater than or equal to.
PTRLLE Less than or equal to.
PTRGA Bitwise AND.
PTRGO Bitwise OR.
PTRGX Bitwise XOR.
Clip conditions PCCNC Not clipped.
PCCPC Partially clipped.
PCCFC Fully clipped.
Filter conditions PFCFLF Condition was not met.
PFCFLP Condition was met.
Filter types PFTINV Invisibility filter.
PFTHL Highlighting filter.
PFTPK Pick filter.
PFTAPP Application filter.
---------------------------------------------------------------------------
Constants
Description
DCSKLB causes traversal to skip to the next element after the specified label, if the test is successful.
Depending on the current edit mode, this function either inserts the new structure element directly after the element indicated by the pointer or replaces the element indicated by the pointer. The pointer then points to the new conditional skip to label element.
If the test succeeds, Digital PHIGS skips to the next element after the specified label element. If the specified label does not exist following the current element, Digital PHIGS reaches the end of the structure and control returns to the parent structure. If the test fails, Digital PHIGS does nothing, and traversal continues with the next element in the current structure.
If Digital PHIGS is in immediate mode, it performs this function immediately, but the function does not create a structure element.
Digital PHIGS Version 3.1 does not support this function.
Data Record Information
If METHOD is PTMTAF or PTMTAS, there is no data record.
If METHOD is PTMTE3, the data record format is as follows:
INTEGER IL = 1 Number of integers
INTEGER IA(1) Test relation
INTEGER RL = 7 Number of reals
REAL RA(1) Minimum x extent of the parallelepiped
REAL RA(2) Maximum x extent of the parallelepiped
REAL RA(3) Minimum y extent of the parallelepiped
REAL RA(4) Maximum y extent of the parallelepiped
REAL RA(5) Minimum z extent of the parallelepiped
REAL RA(6) Maximum z extent of the parallelepiped
REAL RA(7) Threshold
INTEGER SL = 0 Number of strings
If METHOD is PTMTE, the data record format is as follows:
INTEGER IL = 1 Number of integers
INTEGER IA(1) Test relation
INTEGER RL = 5 Number of reals
REAL RA(1) Minimum x extent of the parallelepiped
REAL RA(2) Maximum x extent of the parallelepiped
REAL RA(3) Minimum y extent of the parallelepiped
REAL RA(4) Maximum y extent of the parallelepiped
REAL RA(5) Threshold
INTEGER SL = 0 Number of strings
If METHOD is PTMBD3, the data record format is as follows:
INTEGER IL = 2+IA(1) Number of integers
INTEGER IA(1) Number of point lists
INTEGER IA(2) Clip condition
INTEGER IA(3)...IA(IL) Array of values specifying the index
into the vertex lists of the
x-component of the last
vertex of each fill area in the
fill area set
INTEGER RL = 3∗IA(IL) Number of reals
REAL RA(1)...RA(IA(IL)) List of x components
REAL RA(IA(IL)+1)...RA(2∗IA(IL)) List of y components
REAL RA(2∗IA(IL)+1)...RA(3∗IA(IL)) List of z components
INTEGER SL = 0 Number of strings
If METHOD is PTMBD, the data record format is as follows:
INTEGER IL = 2+IA(1) Number of integers
INTEGER IA(1) Number of point lists
INTEGER IA(2) Clip condition
INTEGER IA(3)...IA(IL) Array of values specifying the index
into the vertex lists of the
x-component of the last
vertex of each fill area in the
fill area set
INTEGER RL = 2∗IA(IL) Number of reals
REAL RA(1)...RA(IA(IL)) List of x components
REAL RA(IA(IL)+1)...RA(2∗IA(IL)) List of y components
INTEGER SL = 0 Number of strings
If METHOD is PTMNMS, the data record format is as follows:
INTEGER IL = 3 Number of integers
INTEGER IA(1) Filter type
INTEGER IA(2) Filter selection
INTEGER IA(3) Filter condition
INTEGER RL = 0 Number of reals
INTEGER SL = 0 Number of strings
If METHOD is PTMAIA, the data record format is as follows:
INTEGER IL = 3 Number of integers
INTEGER IA(1) Attribute selector
INTEGER IA(2) Test comparison
INTEGER IA(3) Value
INTEGER RL = 0 Number of reals
INTEGER SL = 0 Number of strings
If METHOD is PTMARA, the data record format is as follows:
INTEGER IL = 3 Number of integers
INTEGER IA(1) Attribute selector
INTEGER IA(2) Test comparison
INTEGER RL = 1 Number of reals
REAL RA(1) = Value
INTEGER SL = 0 Number of strings
See Also
DCSKEL