PQM3D(3g) — Subroutines
Name
PQM3D − Specifies the surface and interior attributes of a 3D quadrilateral mesh.
Operating States: PHOP, ∗, STOP, ∗
PHIGS PLUS function
Creates a structure element
Old Syntax
DQMD3(SHPFLG, FCTFLG, VTXFLG, CLRTYP, M, N, FICOL, FCOL, FNX, FNY,
FNZ, PXA, PYA, PZA, IVCOL, VCOL, VNXA, VNYA, VNZA)
Argument Data Type Access Description
---------------------------------------------------------------------------
SHPFLG Integer Read Shape of the facets
FCTFLG Integer Read Data per facet flag
VTXFLG Integer Read Data per vertex flag
CLRTYP Integer Read Type of color data
M, N Integer Read Size of mesh, M x N (number of
vertices)
FICOL((M--1)∗ Array of Read Facet indexed color list
(N--1)) integers
FCOL(∗) Array of Read Facet direct color list
reals (r,g,b,r,g,b)
FNX((M--1)∗ Array of Read Facet normal x list
(N--1)) reals
FNY((M--1)∗ Array of Read Facet normal y list
(N--1)) reals
FNZ((M--1)∗ Array of Read Facet normal z list
(N--1)) reals
PXA(M∗N), Array of Read Vertex list
PYA(M∗N), reals
PZA(M∗N)
IVCOL(M∗N) Array of Read Vertex indexed color list
integers
VCOL(∗) Array of Read Vertex direct color list
reals (r,g,b,r,g,b)
VNXA(M∗N), Array of Read Vertex normal list
VNYA(M∗N), reals
VNZA(M∗N)
---------------------------------------------------------------------------
New Syntax
PQM3D (FFLAG, EFLAG, VFLAG, CTYPE, NCC, NC, NR, FCOLI, FCOLR,
FNXA, FNYA, FNZA, FDLEN, FDATA, EDATA, PXA, PYA, PZA, VCOLI, VCOLR, VNXA, VNYA,
VNZA, VDLEN, VDATA)
Argument Data Type Access Description
---------------------------------------------------------------------------
FFLAG Integer Read Data per facet flag
EFLAG Integer Read Data per edge flag
VFLAG Integer Read Data per vertex flag
CTYPE Integer Read Color type
NCC Integer Read Number of color value components
NC, NR Integer Read Number of columns, number of rows
FCOLI((NC-1)∗ Array of Read Facet color indexes
(NR-1)) integers
FCOLR(NCC∗ Array of Read Facet color values
(NC-1)∗(NR-1)) reals
FNXA((NC-1)∗ Array of Read Facet normal data
(NR-1)), reals
FNYA((NC-1)∗
(NR-1)),
FNZA((NC-1)∗
(NR-1))
FDLEN Integer Read Length of the data list per facet
FDATA(FDLEN∗ Real Read Facet data
(NC-1)∗(NR-1)
EDATA(2∗NC∗NR) Integer Read Edge data
PXA(NC∗NR),
PYA(NC∗NR) Array of Read Coordinates of the points, in
reals modeling coordinates
VCOLI(NC∗NR) Array of Read Vertex color indexes
integers
VCOLR(NCC∗ Array of Read Vertex color values
NC∗NR) reals
VNXA(NC∗NR), Array of Read Vertex normal data
VNYA(NC∗NR), reals
VNZA(NC∗NR)
VDLEN Integer Read Length of the data list per vertex
VDATA(VDLEN∗ Real Read Vertex data
NC∗NR)
---------------------------------------------------------------------------
Constants
Defined Argument Constant Description
---------------------------------------------------------------------------
FFLAG PFNO No data per fill area.
PFC Facet color per fill area.
PFN Geometric normal per fill area.
PFCN Facet color and geometric normal per
fill area.
EFLAG PENO No data per edge.
PEVF Edge visibility indicator per edge.
VFLAG PCD No data per vertex.
PCDC Color per vertex.
PCDN Normal per vertex.
PCDCN Color and normal per vertex.
CTYPE PINDIR Indirect (indexed) color.
PRGB Direct specification of red, green, and
blue.
PCIE Direct specification in the format of the
Commission Internationale de l’Eclairage.
PHSV Direct specification of hue, saturation,
and value.
PHLS Direct specification of hue, lightness,
and saturation.
---------------------------------------------------------------------------
Description
PQM3D specifies the surface and the interior attributes of a quadrilateral mesh. The quadrilateral mesh surface is composed of a point array. Digital PHIGS then connects the vertices to create a single facet.
If the data per facet flag indicates that you have specified a facet color, or if the data per vertex flag indicates that you have specified vertex colors, you must also have specified a color type.
The vertex data is a two-dimensional array (of mxn) where the data in each set of four neighboring array elements defines a quadrilateral, which need not be planar. Digital PHIGS uses a workstation-dependent method to render, decompose, or both, the quadrilateral mesh. Digital PHIGS considers a mesh with n < 2 or m < 2 degenerate, and treats it in an implementation-dependent manner.
During structure traversal, Digital PHIGS draws a three-dimensional mesh of (n--1) x (m--1) quadrilaterals, using the same set of attributes used for the fill area set 3 with data primitive.
Depending on the 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 quadrilateral mesh 3 with data element.
If Digital PHIGS is in immediate mode, it performs this function immediately, but the function does not create a structure element. Two-dimensional arrays must have column-major format; that is, with M increasing before N, so that the following is true:
The new function syntax conforms to the ISO Fortran standard. Digital recommends that you code using the new function syntax.
See Also
PADS
PFAS3D
PQEDF
PQIF
PRES
PSBIC
PSBISM
PSBIS
PSBISI
PSBRFM
PSBRFP
PSDCI
PSEDC
PSEDCI
PSEDFG
PSEDI
PSEDT
PSEWSC
PSFCM
PSFDM
PSHRID
PSIASF
PSIC
PSICI
PSII
PSISM
PSIS
PSISI
PSLSS
PSPKID
PSRFM
PSRFP
PSVWI