transform_metrology_objectT_transform_metrology_objectTransformMetrologyObjectTransformMetrologyObject (Operator)

Name

transform_metrology_objectT_transform_metrology_objectTransformMetrologyObjectTransformMetrologyObject — Transform metrology objects of a metrology model, e.g. for alignment.

Warning

transform_metrology_objecttransform_metrology_objectTransformMetrologyObjectTransformMetrologyObjectTransformMetrologyObject is obsolete and is only provided for reasons of backward compatibility. New applications should use the operator align_metrology_modelalign_metrology_modelAlignMetrologyModelAlignMetrologyModelAlignMetrologyModel instead.

Signature

transform_metrology_object( : : MetrologyHandle, Index, Row, Column, Phi, Mode : )

Herror T_transform_metrology_object(const Htuple MetrologyHandle, const Htuple Index, const Htuple Row, const Htuple Column, const Htuple Phi, const Htuple Mode)

void TransformMetrologyObject(const HTuple& MetrologyHandle, const HTuple& Index, const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Mode)

void HMetrologyModel::TransformMetrologyObject(const HTuple& Index, const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Mode) const

void HMetrologyModel::TransformMetrologyObject(const HString& Index, double Row, double Column, double Phi, const HString& Mode) const

void HMetrologyModel::TransformMetrologyObject(const char* Index, double Row, double Column, double Phi, const char* Mode) const

void HMetrologyModel::TransformMetrologyObject(const wchar_t* Index, double Row, double Column, double Phi, const wchar_t* Mode) const   (Windows only)

static void HOperatorSet.TransformMetrologyObject(HTuple metrologyHandle, HTuple index, HTuple row, HTuple column, HTuple phi, HTuple mode)

void HMetrologyModel.TransformMetrologyObject(HTuple index, HTuple row, HTuple column, HTuple phi, HTuple mode)

void HMetrologyModel.TransformMetrologyObject(string index, double row, double column, double phi, string mode)

Description

transform_metrology_objecttransform_metrology_objectTransformMetrologyObjectTransformMetrologyObjectTransformMetrologyObject translates and rotates the metrology objects contained in MetrologyHandleMetrologyHandleMetrologyHandleMetrologyHandlemetrologyHandle specified by the index IndexIndexIndexIndexindex according to the parameters RowRowRowRowrow, ColumnColumnColumnColumncolumn, and PhiPhiPhiPhiphi.

For an explanation of the concept of 2D metrology see the introduction of chapter 2D Metrology.

The index IndexIndexIndexIndexindex refer to the index returned by the operators add_metrology_object_circle_measureadd_metrology_object_circle_measureAddMetrologyObjectCircleMeasureAddMetrologyObjectCircleMeasureAddMetrologyObjectCircleMeasure, add_metrology_object_ellipse_measureadd_metrology_object_ellipse_measureAddMetrologyObjectEllipseMeasureAddMetrologyObjectEllipseMeasureAddMetrologyObjectEllipseMeasure, add_metrology_object_line_measureadd_metrology_object_line_measureAddMetrologyObjectLineMeasureAddMetrologyObjectLineMeasureAddMetrologyObjectLineMeasure, or add_metrology_object_rectangle2_measureadd_metrology_object_rectangle2_measureAddMetrologyObjectRectangle2MeasureAddMetrologyObjectRectangle2MeasureAddMetrologyObjectRectangle2Measure. IndexIndexIndexIndexindex may contain a single value or a tuple of values. If all metrology objects shall be transformed, IndexIndexIndexIndexindex can be set to 'all'"all""all""all""all".

The parameter ModeModeModeModemode can be set to 'absolute'"absolute""absolute""absolute""absolute" or 'relative'"relative""relative""relative""relative" and specifies the effect of the transformation:

ModeModeModeModemode = 'absolute'"absolute""absolute""absolute""absolute":

The metrology objects are translated to the image coordinates RowRowRowRowrow and ColumnColumnColumnColumncolumn and rotated by PhiPhiPhiPhiphi with respect to the image coordinate system.

For metrology objects of the type ellipse, or rectangle, the origin of the rotation is defined in the center of the metrology object as specified in the operators add_metrology_object_ellipse_measureadd_metrology_object_ellipse_measureAddMetrologyObjectEllipseMeasureAddMetrologyObjectEllipseMeasureAddMetrologyObjectEllipseMeasure or add_metrology_object_rectangle2_measureadd_metrology_object_rectangle2_measureAddMetrologyObjectRectangle2MeasureAddMetrologyObjectRectangle2MeasureAddMetrologyObjectRectangle2Measure. For lines and circles, PhiPhiPhiPhiphi is ignored.

ModeModeModeModemode = 'relative'"relative""relative""relative""relative":

The values of the transformation are considered as relative values, i.e., they are specified relative to the previous position and rotation of the metrology object.

For metrology objects of the type ellipse, or rectangle, the origin of the rotation is defined in the center of the metrology object as specified in the operators add_metrology_object_ellipse_measureadd_metrology_object_ellipse_measureAddMetrologyObjectEllipseMeasureAddMetrologyObjectEllipseMeasureAddMetrologyObjectEllipseMeasure, or add_metrology_object_rectangle2_measureadd_metrology_object_rectangle2_measureAddMetrologyObjectRectangle2MeasureAddMetrologyObjectRectangle2MeasureAddMetrologyObjectRectangle2Measure. For lines, the starting point of the line is used as origin of the rotation. For circles, PhiPhiPhiPhiphi is ignored.

transform_metrology_objecttransform_metrology_objectTransformMetrologyObjectTransformMetrologyObjectTransformMetrologyObject is fastest if no rotation is defined, the original and translated measure regions both lie completely within the image. In all other cases, the measure regions have to be newly generated, which is slower.

Attention

Note that any results (fitted geometric shapes) that have been generated by the operator apply_metrology_modelapply_metrology_modelApplyMetrologyModelApplyMetrologyModelApplyMetrologyModel before calling transform_metrology_objecttransform_metrology_objectTransformMetrologyObjectTransformMetrologyObjectTransformMetrologyObject are discarded during the transformation.

Execution Information

This operator modifies the state of the following input parameter:

During execution of this operator, access to the value of this parameter must be synchronized if it is used across multiple threads.

Parameters

MetrologyHandleMetrologyHandleMetrologyHandleMetrologyHandlemetrologyHandle (input_control, state is modified)  metrology_model HMetrologyModel, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle of the metrology model.

IndexIndexIndexIndexindex (input_control)  integer(-array) HTupleHTupleHtuple (string / integer) (string / int / long) (HString / Hlong) (char* / Hlong)

Index of the metrology objects.

Default value: 'all' "all" "all" "all" "all"

Suggested values: 'all'"all""all""all""all", 0, 1, 2

RowRowRowRowrow (input_control)  real(-array) HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Translation in row direction.

ColumnColumnColumnColumncolumn (input_control)  real(-array) HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Translation in column direction.

PhiPhiPhiPhiphi (input_control)  real(-array) HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Rotation angle.

ModeModeModeModemode (input_control)  string(-array) HTupleHTupleHtuple (string) (string) (HString) (char*)

Mode of the transformation.

Default value: 'absolute' "absolute" "absolute" "absolute" "absolute"

Suggested values: 'absolute'"absolute""absolute""absolute""absolute", 'relative'"relative""relative""relative""relative"

Result

If the parameters are valid, the operator transform_metrology_objecttransform_metrology_objectTransformMetrologyObjectTransformMetrologyObjectTransformMetrologyObject returns the value 2 (H_MSG_TRUE). If necessary, an exception is raised.

Module

2D Metrology