PEXOCCSetInteriorBundleIndex - Set Interior Bundle Index (5.0)


Synopsis

 
   void PEXOCCSetInteriorBundleIndex(
        PEXOCC context,
        unsigned int index
   )
 

 
   void PEXSetInteriorBundleIndex(
        Display *display,
        XID resource_id,
        PEXOCRequestType req_type,
        unsigned int index
   )
 

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).

index
The interior bundle table index.

Returns

None.

Description

Invoke PEXOCCSetInteriorBundleIndex to create an attribute output command which sets the interior bundle index attribute in the renderer's pipeline state according to the value specified by index.

You use the interior bundle index to select an entry of the renderer's interior bundle table whenever a bundlable surface attribute's ASF is set to PEXBundled (see PEXOCCSetIndividualASF) and the renderer's PHIGS interior bundle mode is False. PEXlib supports the bundling of the following surface attributes: surface interior style, surface interior style index, surface color, surface interpolation method, reflectance attributes, back-facing surface interior style, back-facing surface interior style index, back-facing surface color, back- face surface interpolation method, back-facing reflectance attributes, and parametric surface characteristics.

If the renderer's PHIGS interior bundle mode is True, then the interior bundle index still selects an entry of the interior bundle table but only when a bundlable interior attribute's ASF is set to PEXBundled. PEXlib supports the bundling of the following interior attributes: surface interior style, surface interior style index, surface color, and surface interpolation method. The remaining bundled surface attributes are also selected from the interior bundle table, but the back-facing interior bundle index, reflectance bundle index, back-facing reflectance bundle index, and parametric surface bundle index are used to select entries of the interior bundle table.

If you specify an undefined interior bundle index, then the index defaults to index one. If index one is not defined, then the implementation sets: the interior style to PEXInteriorStyleHollow; the interior style index to one; the surface color to indexed color one; reflection attributes to ambient, diffuse and specular coefficient to 1.0, specular concentration and transmission coefficient to 0.0 and specular color to indexed color one; reflection model to PEXRMNone; surface interpolation to PEXSurfaceInterpNone; and surface approximation to PEXApproxImpDep with u and v tolerances of 1.0. The back-facing attributes are set to identical values as the front-facing attributes. If you specify an interior bundle index of zero, then the implementation issues a BadPEXOutputCommand error.

See also the discussion on PHIGS interior bundle mode

This function is a member of the general surface, styled and shaded surface, curved surface, and parametric surface attribute sets.

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 an overview and for a list of all output attribute functions, see Output Attribute Functions.