PEXOCCSetLocalTransform2D - Set Local Transformation 2D (5.0)


Synopsis

 
   void PEXOCCSetLocalTransform2D(
        PEXOCC context,
        int composition,
        PEXMatrix3x3 transform,
        PEXMatrixHints hints
   )
 

 
   void PEXSetLocalTransform2D(
        Display *display,
        XID resource_id,
        PEXOCRequestType req_type,
        int composition,
        PEXMatrix3x3 transform
   )
 

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

composition
The composition rule for combining the new matrix with the current local transform (PEXPreConcatenate, PEXPostConcatenate or PEXReplace).

transform
The new local transformation matrix.

hints
Hints for the new global transformation matrix. (PEXMHNone, PEXMHIdentity, PEXMHTranslation, PEXMHRotation, PEXMHReflection, PEXMHUniformScale, PEXMHNonUniformScale, PEXMHShear, PEXMHPerspProjective, PEXMHNonPerspProjective, PEXMH3DTo2DParProj, PEXMH3DTo2DPerspProj, PEXMHZero, PEXMHSingularUnknown, PEXMHNonSingularUnknown). Available only in the OCC form of the function.

Returns

None.

Description

Invoke PEXOCCSetLocalTransform2D to create an attribute output command which modifies the local transformation matrix in the renderer's pipeline state.

The PEXOCCSetLocalTransform2D function generates a PEXOCLocalTransform2DWithHints output command. However, if the PEX server on the display connection is version 5.1 or the Alternate Protocol Level is 5.1, then this function generates a PEXOCLocalTransform2D output command, ignoring any supplied hint.

The PEXSetLocalTransform2D function generates a PEXOCLocalTransform2D output command.

This output command is similar to the PEXOCCSetLocalTransform function except that you specify the local transformation matrix as a 3x3 matrix. Before modification of the local transformation matrix, the 3x3 matrix is expanded to a 4 x 4 matrix as follows:

The matrix hints, if given, are representative of the matrix after it has been expanded.

The local transform 2D function is a member of the global attribute set.

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 output attribute functions, see Output Attribute Functions.