PEXOCCPolylines - Polylines Primitive (5.0)


Synopsis

 
     void PEXOCCPolylines(
          PEXOCC context,
          unsigned int count,
          PEXListOfVertexData *occ_vertex_lists
      )
 

     void PEXPolylineSetWithData(
          Display *display,
          XID resource_id,
          PEXOCRequestType req_type,
          unsigned int vertex_attributes,
          int color_type,
          unsigned int count,
          PEXListOfVertex *vertex_lists
     )

Arguments

context
An OC context returned by a successful PEXCreateOCC call.

display (OCC)
A pointer to a display structure returned by a successful XOpenDisplay call.

resource_id (OCC)
The resource identifier of the renderer or structure.

req_type (OCC)
The request type for the output command (PEXOCRender, PEXOCStore, PEXOCRenderSingle or PEXOCStoreSingle).

line_vertex_attributes (OCC)
A mask indicating the vertex attributes provided (PEXGANone(5.0), PEXGAColor(5.0), PEXGAEdges(5.2), PEXGA2D(5.0) or PEXGAFloatData(5.2)).

color_type (OCC)
The type of color data provided (PEXColorTypeIndexed, PEXColorTypeRGB, PEXColorTypeCIE, PEXColorTypeHSV, PEXColorTypeHLS, PEXColorTypeRGB8, PEXColorTypeRGB16, PEXColorTypeRGBA, PEXColorTypeRGBA8, or PEXColorTypeRGBA16).

line_vertex_fp_data_count (OCC)
The number of optional floating-point numbers for each vertex.

count
The number of polylines.

occ_vertex_lists
A pointer to a list of vertex arrays defining each polyline in the set. See Facet / Vertex Data Formats.

vertex_lists
A pointer to a list of vertex arrays defining each polyline in the set.

data_model (OCC)
Specifies the data model used to represent the geometric data.

data_model_specs (OCC)
Offset and size data for the PEXDataStride or PEXDataUnpacked data models.

Returns

None.

Description

Invoke PEXOCCPolylines to create a primitive output command that defines multiple polylines with optional color, move/draw flags, 2D coords, or floating-point data (PEXOCPolylineSetWithDataFP). You cannot use the PEXPolylineSetWithData function to specify move/draw flags, 2D coords, or floating-point data. If the display is a connection to a PEX 5.1 server or the Alternate Protocol Level is 5.1, this function generates a PEXOCPolylineSetWithData output command instead of a PEXOCPolylineSetWithDataFP output command.

This primitive is similar to the PEXOCCPolyline primitive, except that it enables your application to specify a number of distinct polylines instead of just one.

Note that you are able to specify a disjoint polyline in one of two ways. Use the PEXOCCPolyline function with the optional move/draw flags with a single list of vertices, or use the PEXOCCPolylines function without move/draw flags and multiple lists of vertices. Note that you are able to draw a list of disjoint polylines by using the PEXOCCPolylines function with both move/draw flags and multiple lists of vertices.

Clipping of this function is similar to Polyline 3D. See Line Attributes. on page 125..

This primitive uses the line and shaded line attribute sets.

Defining a list of polylines containing a polyline with fewer than two vertices creates a degenerate primitive. The implementation stores the polyline set in a structure when included in a PEXStoreElements request, but when the polyline set is rendered there is no visual effect. The implementation ignores the primitive.

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

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

For primitives similar to this one, see:

For PEXlib 5.1 compatibility primitives similar to this one, see:

For attributes that affect this primitive, see

For an overview, see Output Command Functions.