NNS_G2dMakeCellToOams

Syntax

#include <nnsys/g2d/g2d_CellAnimation.h>

u16 NNS_G2dMakeCellToOams
( 
    GXOamAttr*              pDstOams,
    u16                     numDstOam, 
    const NNSG2dCellData*   pCell, 
    const MtxFx22*          pMtxSR, 
    const NNSG2dFVec2*      pBaseTrans,
    u16                     affineIndex,
    BOOL                    bDoubleAffine 
);

  

Arguments

pDstOams [OUT] Pointer to the start of the buffer that stores the transformation result
numDstOam [IN] Length of the buffer that stores the transformation result
pCell [IN] Cell data
pMtxSR [IN] Affine transformation (optional)
pBaseTrans [IN] Translation value (optional)
affineIdx [IN] Affine index (optional)
bDoubleAffine [IN] Whether to use the double-size affine mode

Return Values

The number of OBJs used.

Description

Writes out the OBJ array that renders the cell. Sufficient space must be secured in the buffer. Pass NULL to pMtxSR and pBaseTrans when you do not want to perform affine transformation or translation. If performing an affine transformation, specify an affine index.

The affine transformation matrix that is taken in by this function must be a standard-format matrix.
Note that inverse-format matrices cannot be used for scale values that are used as affine parameters of the 2D graphics engine.


When double-size affine mode is specified, the function internally performs position correction of the OBJ.
Starting with the 2005/06/06 version, position correction processing is performed only when the OBJ's affine transformation mode is actually changed. (In other words, data created as a double-size affine OBJ is not corrected.)

See Also

NNS_G2dCopyCellAsOamAttr

Revision History

2005/06/06 Added warning about position correction processing.
2004/05/28 Initial version.


CONFIDENTIAL