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
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
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
This operator modifies the state of the following input parameter:
The value of this parameter may not be shared across multiple threads without external synchronization.
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