Command
QisLib_SetTransformation Function: int QisLib_SetTransformation(CQisMetric Dx, CQisMetric Dy, int ReflectAxis, double Angle, double ScaleX, double ScaleY); Inputs: Dx: Translate in X direction by 'Dx' vector units. (DBU or UU) Dy: Translate in Y direction by 'Dy' vector units. (DBU or UU) ReflectAxis: _QIST_N (no mirroring), _QIST_X (mirror about X axis), _QIST_Y (mirror about Y axis) or _QIST_XY (mirror about X,Y axes) Angle: Rotatation in degrees about Z in counter clockwise direction. ScaleX: Scale in X-direction. ScaleY: Scale in Y-direction. Return: success: 0 failure: one of the following values : Errors: -1: QisLib has not been initialized. -2: Internal memory error occurred while setting transformation. -3: The current cell set via QisLib_OpenStructure is invalid or does not exist. -4: File open in progress, operation not permitted. Description: - QisLib_SetTransformation sets the transformation for the current cell (QisLib_OpenStructure). These transformation settings are applied to the data when they are drawn, output as vectors and saved to an output GDSII/OASIS file. - User can have a different transformation for every cell. Just call QisLib_OpenStructure and then call QisLib_SetTransformation. - User can set different transformation for each root cell, the root cell would be drawn using the transformation. When saving, the data in the root cell's first level would be transformed. - Transformation takes place in this order: dx, dy, xy mirror, rotate, scale x, scale y. - cell extents returned by QisLib_GetStructureExtents are transformed by the QisLib_SetTransformation settings on the queried cell. - Different scales can be specified for X and Y. This might be useful for drawing and Tiff extraction. - GDSII and OASIS output with hierarchy will not have the correct scale and rotation in the references because they don't support different XY scales. (QisLib_SaveGDSII, QisLib_SaveGDSIIStructure, QisLib_SaveOASIS and QisLib_SaveOASISStructure) - GDSII and OASIS output path width will not look the same as drawing because the width might look different along the x and y axis but there is only one width in the GDSII or OASIS output.References: QisLib_OpenStructure QisLib_SetVectorUnit CQisMetric _QIST_N _QIST_X _QIST_Y _QIST_XY |