add_metrology_object_ellipse_measure T_add_metrology_object_ellipse_measure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure (Operator)
Name
add_metrology_object_ellipse_measure T_add_metrology_object_ellipse_measure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure
— Hinzufügen einer Ellipse oder eines Ellipsenbogens zu einem Messmodell.
Signatur
add_metrology_object_ellipse_measure ( : : MetrologyHandle , Row , Column , Phi , Radius1 , Radius2 , MeasureLength1 , MeasureLength2 , MeasureSigma , MeasureThreshold , GenParamName , GenParamValue : Index )
Herror T_add_metrology_object_ellipse_measure (const Htuple MetrologyHandle , const Htuple Row , const Htuple Column , const Htuple Phi , const Htuple Radius1 , const Htuple Radius2 , const Htuple MeasureLength1 , const Htuple MeasureLength2 , const Htuple MeasureSigma , const Htuple MeasureThreshold , const Htuple GenParamName , const Htuple GenParamValue , Htuple* Index )
void AddMetrologyObjectEllipseMeasure (const HTuple& MetrologyHandle , const HTuple& Row , const HTuple& Column , const HTuple& Phi , const HTuple& Radius1 , const HTuple& Radius2 , const HTuple& MeasureLength1 , const HTuple& MeasureLength2 , const HTuple& MeasureSigma , const HTuple& MeasureThreshold , const HTuple& GenParamName , const HTuple& GenParamValue , HTuple* Index )
Hlong HMetrologyModel ::AddMetrologyObjectEllipseMeasure (const HTuple& Row , const HTuple& Column , const HTuple& Phi , const HTuple& Radius1 , const HTuple& Radius2 , const HTuple& MeasureLength1 , const HTuple& MeasureLength2 , const HTuple& MeasureSigma , const HTuple& MeasureThreshold , const HTuple& GenParamName , const HTuple& GenParamValue ) const
Hlong HMetrologyModel ::AddMetrologyObjectEllipseMeasure (double Row , double Column , double Phi , double Radius1 , double Radius2 , double MeasureLength1 , double MeasureLength2 , double MeasureSigma , double MeasureThreshold , const HTuple& GenParamName , const HTuple& GenParamValue ) const
static void HOperatorSet .AddMetrologyObjectEllipseMeasure (HTuple metrologyHandle , HTuple row , HTuple column , HTuple phi , HTuple radius1 , HTuple radius2 , HTuple measureLength1 , HTuple measureLength2 , HTuple measureSigma , HTuple measureThreshold , HTuple genParamName , HTuple genParamValue , out HTuple index )
int HMetrologyModel .AddMetrologyObjectEllipseMeasure (HTuple row , HTuple column , HTuple phi , HTuple radius1 , HTuple radius2 , HTuple measureLength1 , HTuple measureLength2 , HTuple measureSigma , HTuple measureThreshold , HTuple genParamName , HTuple genParamValue )
int HMetrologyModel .AddMetrologyObjectEllipseMeasure (double row , double column , double phi , double radius1 , double radius2 , double measureLength1 , double measureLength2 , double measureSigma , double measureThreshold , HTuple genParamName , HTuple genParamValue )
Beschreibung
add_metrology_object_ellipse_measure add_metrology_object_ellipse_measure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure
fügt ein Metrology-Messobjekt
vom Typ Ellipse oder einen Ellipsenbogen zu einem Messmodell hinzu und
bereitet die rechteckigen Messregionen vor. Das Handle des Messmodells muss in
MetrologyHandle MetrologyHandle MetrologyHandle MetrologyHandle metrologyHandle
übergeben werden.
Das Konzept der 2D-Messtechnik ist bei der Einleitung zu Kapitel
2D-Messtechnik beschrieben.
Die genäherte geometrische Form des Metrology-Messobjekts vom Typ
Ellipse wird durch ihren Mittelpunkt (Row Row Row Row row
,
Column Column Column Column column
), die Orientierung der Hauptachse Phi Phi Phi Phi phi
und die Länge der großen Halbachse Radius1 Radius1 Radius1 Radius1 radius1
bzw. der kleinen
Halbachse Radius2 Radius2 Radius2 Radius2 radius2
beschrieben. Der Eingabewert
Phi Phi Phi Phi phi
wird automatisch auf
das Intervall
abgebildet.
Die Messregionen liegen senkrecht zum Ellipsenrand.
Die halbe Kantenlänge der Messregionen senkrecht und tangential zur
Ellipse werden jeweils in MeasureLength1 MeasureLength1 MeasureLength1 MeasureLength1 measureLength1
und in
MeasureLength2 MeasureLength2 MeasureLength2 MeasureLength2 measureLength2
gesetzt.
Die Mittelpunkte der Messregionen liegen auf dem Rand der Ellipse.
Der Parameter MeasureSigma MeasureSigma MeasureSigma MeasureSigma measureSigma
legt eine Standardabweichung
für die Glättung der Grauwerte im Bild durch den Operator
apply_metrology_model apply_metrology_model ApplyMetrologyModel ApplyMetrologyModel ApplyMetrologyModel
fest. Auffällige Kanten können mit
dem Parameter MeasureThreshold MeasureThreshold MeasureThreshold MeasureThreshold measureThreshold
, der einen Schwellwert für
die Kantenamplitude, d.h. den Absolutbetrag der ersten Ableitung,
angibt, selektiert werden. Der Operator
add_metrology_object_ellipse_measure add_metrology_object_ellipse_measure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure
gibt den Index des
hinzugefügten Metrology-Messobjekts in dem Parameter Index Index Index Index index
zurück.
Desweiteren können in GenParamName GenParamName GenParamName GenParamName genParamName
und GenParamValue GenParamValue GenParamValue GenParamValue genParamValue
generische Parameter angepasst werden. Die folgenden generischen
Parameter GenParamName GenParamName GenParamName GenParamName genParamName
und die dazugehörigen Werte
GenParamValue GenParamValue GenParamValue GenParamValue genParamValue
zur Festlegung eines Ellipsenbogens sind verfügbar:
'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" :
Der Parameter legt den Anfangswinkel
des Ellipsenbogens fest. Der Anfangswinkel wird relativ zur positiven
großen Halbachse gemessen, deren Orientierung durch Phi Phi Phi Phi phi
gegeben ist und bezieht sich auf den kleinsten die Ellipse
umgebenden Kreis. Der tatsächliche Anfangspunkt der Ellipse
ergibt sich aus dem Schnittpunkt der Ellipse mit der
Orthogonalprojektion des entsprechenden Kreispunktes auf die große
Halbachse. Der Winkel wird dabei im Ellipsenkoordinatensystem
bezogen auf die Hauptachse der Ellipse mathematisch positiv
angegeben. Die beiden Hauptpole der Ellipse haben demnach die
Winkel 0 bzw.
, die Nebenpole die Winkel
bzw.
. Um eine
geschlossene Ellipse zu erhalten, müssen der Wert des Parameters
'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" auf 0 und der Wert des Parameters
'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" auf
gesetzt sein
(bei positivem Umlaufsinn). Die Eingabewerte werden
automatisch auf das Intervall
abgebildet.
Wertevorschläge: 0.0 , 0.78 ,
6.28318
Defaultwert: 0.0
'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" :
Der Parameter legt den Endwinkel
des Ellipsenbogens fest. Der Endwinkel wird relativ zur positiven
großen Halbachse gemessen, deren Orientierung durch Phi Phi Phi Phi phi
gegeben ist und bezieht sich auf den kleinsten die Ellipse
umgebenden Kreis. Der tatsächliche Endpunkt der Ellipse
ergibt sich aus dem Schnittpunkt der Ellipse mit der
Orthogonalprojektion des entsprechenden Kreispunktes auf die große
Halbachse. Der Winkel wird dabei im Ellipsenkoordinatensystem
bezogen auf die Hauptachse der Ellipse mathematisch positiv
angegeben. Die beiden Hauptpole der Ellipse haben demnach die
Winkel 0 bzw.
, die Nebenpole die Winkel
bzw.
. Um eine
geschlossene Ellipse zu erhalten, müssen der Wert des Parameters
'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" auf 0 und der Wert des Parameters
'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" auf
gesetzt sein
(bei positivem Umlaufsinn). Die Eingabewerte werden
automatisch auf das Intervall
abgebildet.
Wertevorschläge: 0.0 , 0.78 ,
6.28318
Defaultwert: 6.28318
'point_order' "point_order" "point_order" "point_order" "point_order" :
Der Parameter legt die Richtung
des Ellipsenbogens fest. Wird der Wert auf 'positive' "positive" "positive" "positive" "positive" gesetzt,
ist der Ellipsenbogen zwischen 'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" und
'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" im mathematisch positiven Sinn
(gegen den Uhrzeigersinn) definiert. Wird der Wert auf
'negative' "negative" "negative" "negative" "negative" gesetzt, ist der Ellipsenbogen zwischen
'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" und 'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" im mathematisch
negativen Sinn (im Uhrzeigersinn) definiert.
Wertevorschläge: 'positive' "positive" "positive" "positive" "positive" , 'negative' "negative" "negative" "negative" "negative"
Defaultwert: 'positive' "positive" "positive" "positive" "positive"
Weitere generische Parameter sind alle generischen Parameter, die im
Operator set_metrology_object_param set_metrology_object_param SetMetrologyObjectParam SetMetrologyObjectParam SetMetrologyObjectParam
zur Verfügung stehen.
In den meisten Fällen reichen die Standardwerte aus, so dass keine
Anpassung nötig ist.
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
Wird ohne Parallelisierung verarbeitet.
Dieser Operator modifiziert den Zustand des folgenden Eingabeparameters:
Während der Ausführung dieses Operators muss der Zugriff auf den Wert dieses Parameters synchronisiert werden, wenn er über mehrere Threads hinweg verwendet wird.
Parameter
MetrologyHandle MetrologyHandle MetrologyHandle MetrologyHandle metrologyHandle
(input_control, Zustand wird modifiziert) metrology_model →
HMetrologyModel , HTuple HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Handle des Messmodells.
Row Row Row Row row
(input_control) ellipse.center.y(-array) →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Zeilenkoordinate des Mittelpunkts der Ellipse.
Column Column Column Column column
(input_control) ellipse.center.x(-array) →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Spaltenkoordinate des Mittelpunkts der Ellipse.
Phi Phi Phi Phi phi
(input_control) ellipse.angle.rad(-array) →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Orientierung der Hauptachse [rad].
Radius1 Radius1 Radius1 Radius1 radius1
(input_control) ellipse.radius1(-array) →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Länge der großen Halbachse.
Radius2 Radius2 Radius2 Radius2 radius2
(input_control) ellipse.radius2(-array) →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Länge der kleinen Halbachse.
MeasureLength1 MeasureLength1 MeasureLength1 MeasureLength1 measureLength1
(input_control) number →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Halbe Länge der Messregionen senkrecht zum Rand.
Defaultwert: 20.0
Wertevorschläge: 10.0, 20.0, 30.0
Typischer Wertebereich: 1.0
≤
MeasureLength1
MeasureLength1
MeasureLength1
MeasureLength1
measureLength1
Minimale Schrittweite: 1.0
Empfohlene Schrittweite: 10.0
Restriktion: MeasureLength1 < Radius1 && MeasureLength1 < Radius2
MeasureLength2 MeasureLength2 MeasureLength2 MeasureLength2 measureLength2
(input_control) number →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Halbe Länge der Messregionen tangential zum Rand.
Defaultwert: 5.0
Wertevorschläge: 3.0, 5.0, 10.0
Typischer Wertebereich: 1.0
≤
MeasureLength2
MeasureLength2
MeasureLength2
MeasureLength2
measureLength2
Minimale Schrittweite: 1.0
Empfohlene Schrittweite: 10.0
MeasureSigma MeasureSigma MeasureSigma MeasureSigma measureSigma
(input_control) number →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Sigma der Gaußfunktion für die Glättung.
Defaultwert: 1.0
Wertevorschläge: 0.4, 0.6, 0.8, 1.0, 1.5, 2.0, 3.0, 4.0, 5.0, 7.0, 10.0
Typischer Wertebereich: 0.4
≤
MeasureSigma
MeasureSigma
MeasureSigma
MeasureSigma
measureSigma
Minimale Schrittweite: 0.01
Empfohlene Schrittweite: 0.1
Restriktion: 0.4 <= MeasureSigma && MeasureSigma <= 100
MeasureThreshold MeasureThreshold MeasureThreshold MeasureThreshold measureThreshold
(input_control) number →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Minimale Amplitude einer Kante.
Defaultwert: 30.0
Wertevorschläge: 5.0, 10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 90.0, 110.0
Typischer Wertebereich: 1
≤
MeasureThreshold
MeasureThreshold
MeasureThreshold
MeasureThreshold
measureThreshold
≤
255
(lin)
Minimale Schrittweite: 0.5
Empfohlene Schrittweite: 2
GenParamName GenParamName GenParamName GenParamName genParamName
(input_control) attribute.name-array →
HTuple HTuple Htuple (string) (string ) (HString ) (char* )
Namen der generischen Parameter.
Defaultwert: []
Werteliste: 'distance_threshold' "distance_threshold" "distance_threshold" "distance_threshold" "distance_threshold" , 'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" , 'instances_outside_measure_regions' "instances_outside_measure_regions" "instances_outside_measure_regions" "instances_outside_measure_regions" "instances_outside_measure_regions" , 'max_num_iterations' "max_num_iterations" "max_num_iterations" "max_num_iterations" "max_num_iterations" , 'measure_distance' "measure_distance" "measure_distance" "measure_distance" "measure_distance" , 'measure_interpolation' "measure_interpolation" "measure_interpolation" "measure_interpolation" "measure_interpolation" , 'measure_select' "measure_select" "measure_select" "measure_select" "measure_select" , 'measure_transition' "measure_transition" "measure_transition" "measure_transition" "measure_transition" , 'min_score' "min_score" "min_score" "min_score" "min_score" , 'num_instances' "num_instances" "num_instances" "num_instances" "num_instances" , 'num_measures' "num_measures" "num_measures" "num_measures" "num_measures" , 'point_order' "point_order" "point_order" "point_order" "point_order" , 'rand_seed' "rand_seed" "rand_seed" "rand_seed" "rand_seed" , 'start_phi' "start_phi" "start_phi" "start_phi" "start_phi"
GenParamValue GenParamValue GenParamValue GenParamValue genParamValue
(input_control) attribute.value-array →
HTuple HTuple Htuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)
Werte der generischen Parameter.
Defaultwert: []
Wertevorschläge: 1, 2, 3, 4, 5, 10, 20, 'all' "all" "all" "all" "all" , 'true' "true" "true" "true" "true" , 'false' "false" "false" "false" "false" , 'first' "first" "first" "first" "first" , 'last' "last" "last" "last" "last" , 'positive' "positive" "positive" "positive" "positive" , 'negative' "negative" "negative" "negative" "negative" , 'uniform' "uniform" "uniform" "uniform" "uniform" , 'nearest_neighbor' "nearest_neighbor" "nearest_neighbor" "nearest_neighbor" "nearest_neighbor" , 'bilinear' "bilinear" "bilinear" "bilinear" "bilinear" , 'bicubic' "bicubic" "bicubic" "bicubic" "bicubic"
Index Index Index Index index
(output_control) integer →
HTuple HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Index des erstellten Metrology-Messobjekts.
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
add_metrology_object_ellipse_measure add_metrology_object_ellipse_measure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure
den Wert 2 (H_MSG_TRUE).
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
set_metrology_model_image_size set_metrology_model_image_size SetMetrologyModelImageSize SetMetrologyModelImageSize SetMetrologyModelImageSize
Nachfolger
align_metrology_model align_metrology_model AlignMetrologyModel AlignMetrologyModel AlignMetrologyModel
,
apply_metrology_model apply_metrology_model ApplyMetrologyModel ApplyMetrologyModel ApplyMetrologyModel
Alternativen
add_metrology_object_generic add_metrology_object_generic AddMetrologyObjectGeneric AddMetrologyObjectGeneric AddMetrologyObjectGeneric
Siehe auch
get_metrology_object_model_contour get_metrology_object_model_contour GetMetrologyObjectModelContour GetMetrologyObjectModelContour GetMetrologyObjectModelContour
,
set_metrology_model_param set_metrology_model_param SetMetrologyModelParam SetMetrologyModelParam SetMetrologyModelParam
,
add_metrology_object_circle_measure add_metrology_object_circle_measure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure
,
add_metrology_object_line_measure add_metrology_object_line_measure AddMetrologyObjectLineMeasure AddMetrologyObjectLineMeasure AddMetrologyObjectLineMeasure
,
add_metrology_object_rectangle2_measure add_metrology_object_rectangle2_measure AddMetrologyObjectRectangle2Measure AddMetrologyObjectRectangle2Measure AddMetrologyObjectRectangle2Measure
Modul
2D Metrology