Die Berechnung der Kontur wird mit Hilfe morphologischer Operationen
durchgeführt. Die Ergebnisregionen bestehen nur aus einem minimalen Rand
der Eingaberegionen. Dabei hängt die Position des Randes vom Parameter
BoundaryTypeBoundaryTypeBoundaryTypeBoundaryTypeboundaryType ab, für den die folgenden Werte möglich sind:
'inner'"inner""inner""inner""inner": Die Kontur liegt innerhalb der Eingaberegionen.
'inner_filled'"inner_filled""inner_filled""inner_filled""inner_filled": Die Kontur liegt innerhalb der
Eingaberegionen, Hohlflächen der Eingaberegionen werden unterdrückt.
Aufgrund der Algorithmen-Optimierung kann es leichte Abweichung
geben zwischen den so erhaltenen Konturen und den entsprechenden
Konturen die mit 'inner_filled'"inner_filled""inner_filled""inner_filled""inner_filled" erhalten wurden.
'outer'"outer""outer""outer""outer": Die Kontur liegt ein Pixel ausserhalb der
Eingaberegionen.
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
Sei A die Fläche einer Eingaberegion, dann ist die
Laufzeitkomplexität für ein Objekt:
Ergebnis
Bei korrekter Parametrisierung liefert die Funktion
boundaryboundaryBoundaryBoundaryBoundary den Wert 2 (H_MSG_TRUE). Das Funktionsverhalten für die
beiden Fälle leere und keine Eingaberegion lässt sich wie folgt
kontrollieren:
keine Region:
set_system('no_object_result',<RegionResult>)