Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ PEXFillAreaSetWithData(3) — Open3D 4.96

Media Vault

Software Library

Restoration Projects

Artifacts Sought

PEXFillAreaSetWithData(3)  —  Subroutines

Name

PEXFillAreaSetWithData - 3D Set of Fill Areas Primitive With Additional Data

Synopsis

void PEXFillAreaSetWithData(Display ∗display, XID resource_id, PEXOCRequestType req_type, int shape_hint, int ignore_edges, int contour_hint, unsigned int facet_attributes, unsigned int vertex_attributes, int color_type, unsigned int count, PEXFacetData ∗facet_data, PEXListOfVertex ∗vertex_lists)

Arguments

displayA pointer to a display structure returned by a successful XOpenDisplay call. 

resource_idThe resource identifier of the renderer or structure. 

req_typeThe request type for the output command (PEXOCRender, PEXOCStore, PEXOCRenderSingle or PEXOCStoreSingle).

shape_hintThe shape which describes all of the contours (PEXShapeComplex, PEXShapeNonConvex, PEXShapeConvex, PEXShapeUnknown).

ignore_edgesA flag that determines if surface edges are rendered (True or False).

contour_hintA flag that indicates whether contours are disjoint or overlapping (PEXContourDisjoint, PEXContourNested, PEXContourIntersecting, PEXContourUnknown).

facet_attributes
A mask indicating the facet attributes provided (PEXGANone, PEXGAColor, PEXGANormal).

vertex_attributes
A mask indicating the vertex attributes provided (PEXGANone, PEXGAColor, PEXGANormal, PEXGAEdges).

color_typeThe type of color data provided (PEXColorTypeIndexed, PEXColorTypeRGB, PEXColorTypeCIE, PEXColorTypeHSV, PEXColorTypeHLS, PEXColorTypeRGB8, PEXColorTypeRGB16).

countThe number of fill areas in the set. 

facet_dataA pointer to facet data. 

vertex_listsA pointer to the list of vertex arrays defining each contour of the fill area set. 

Returns

None

Description

This function creates a fill area set output primitive. 

This function is like PEXFillAreaSet except that it allows additional information to be specified for each fill area and for each vertex. It is similar to PEXFillAreaWithData but allows for the creation of areas with "islands" or "holes". Color values passed must be of the specified color type.

The facet attributes indicate the content of the facet data.  This data may be a color, a normal, or a color followed by a normal.  Use the constants PEXGANone, PEXGAColor and PEXGANormal to construct a mask indicating the data provided. If specified, the facet color takes precedence over the surface color. If specified, the facet normal is used to determine whether the fill area is back-facing.

The vertex attributes indicate the content of each fill area vertex.  In addition to the coordinate (x,y,z), applications may specify a color, a normal, an edge flag, or any combination of the three specified in the order given.  Use the constants PEXGANone, PEXGAColor, PEXGANormal and PEXGAEdges to construct a mask indicating the data provided. If specified, vertex colors will override facet color or the current surface color. If specified, vertex normals are taken to be normals at the vertices of the fill area.

The reflection model and the surface interpolation will affect how the additional data is used in rendering the surface.  Edge controls are used to indicate those edges rendered if the surface edges are enabled.  The edge control for vertex i indicates whether or not to render the edge between vertex i and vertex i+1.  Surface edges are always rendered with the surface edge color and are not affected by the facet or vertex colors. 

Normals are assumed to be unit length vectors.  The effect if the normal is not unit length is implementation-dependent. 

All other aspects of this primitive are the same as PEXFillAreaSet.

Data Structures

See the PEXStructuresman page.

Errors

BadPEXOutputCommand
The output command contains an invalid value.

BadPEXRenderer
The specified renderer resource identifier is invalid.

BadPEXStructure
The specified structure resource identifier is invalid.

See Also

PEXSetInteriorStyle, PEXSetInteriorStyleIndex, PEXSetSurfaceColorIndex,
PEXSetSurfaceColor, PEXSetReflectionAttributes, PEXSetReflectionModel,
PEXSetSurfaceInterpMethod, PEXSetBFInteriorStyle, PEXSetBFInteriorStyleIndex,
PEXSetBFSurfaceColorIndex, PEXSetBFSurfaceColor, PEXSetBFReflectionAttributes,
PEXSetBFReflectionModel, PEXSetBFSurfaceInterpMethod, PEXSetFacetCullingMode,
PEXSetFacetDistinguishFlag, PEXSetPatternSize,
PEXSetPatternAttributes, PEXSetPatternAttributes2D, PEXSetInteriorBundleIndex,
PEXSetSurfaceEdgeFlag, PEXSetSurfaceEdgeType, PEXSetSurfaceEdgeWidth,
PEXSetSurfaceEdgeColor, PEXSetSurfaceEdgeColorIndex, PEXSetEdgeBundleIndex

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