KlassenKlassenKlassenKlassen | | | | Operatoren

test_region_pointtest_region_pointTestRegionPointtest_region_pointTestRegionPointTestRegionPoint (Operator)

Name

test_region_pointtest_region_pointTestRegionPointtest_region_pointTestRegionPointTestRegionPoint — Testen, ob eine Region einen gegebenen Punkt enthält.

Signatur

test_region_point(Regions : : Row, Column : IsInside)

Herror test_region_point(const Hobject Regions, const Hlong Row, const Hlong Column, Hlong* IsInside)

Herror T_test_region_point(const Hobject Regions, const Htuple Row, const Htuple Column, Htuple* IsInside)

Herror test_region_point(Hobject Regions, const HTuple& Row, const HTuple& Column, Hlong* IsInside)

Hlong HRegion::TestRegionPoint(const HTuple& Row, const HTuple& Column) const

Hlong HRegionArray::TestRegionPoint(const HTuple& Row, const HTuple& Column) const

void TestRegionPoint(const HObject& Regions, const HTuple& Row, const HTuple& Column, HTuple* IsInside)

Hlong HRegion::TestRegionPoint(Hlong Row, Hlong Column) const

void HOperatorSetX.TestRegionPoint(
[in] IHUntypedObjectX* Regions, [in] VARIANT Row, [in] VARIANT Column, [out] VARIANT* IsInside)

Hlong HRegionX.TestRegionPoint(
[in] Hlong Row, [in] Hlong Column)

static void HOperatorSet.TestRegionPoint(HObject regions, HTuple row, HTuple column, out HTuple isInside)

int HRegion.TestRegionPoint(int row, int column)

Beschreibung

test_region_pointtest_region_pointTestRegionPointtest_region_pointTestRegionPointTestRegionPoint prüft, ob mindestens eine Eingaberegion aus RegionsRegionsRegionsRegionsRegionsregions den Testpunkt (RowRowRowRowRowrow,ColumnColumnColumnColumnColumncolumn) enthält. Ist dies der Fall, so wird IsInsideIsInsideIsInsideIsInsideIsInsideisInside auf TRUE gesetetzt, andernfalls auf FALSE

Achtung

Bei leerer Eingabe (= keine Region) wird im Fall set_system('no_object_result','true')set_system("no_object_result","true")SetSystem("no_object_result","true")set_system("no_object_result","true")SetSystem("no_object_result","true")SetSystem("no_object_result","true") IsInsideIsInsideIsInsideIsInsideIsInsideisInside auf FALSE gesetzt (keine Region enthält den Punkt).

Der Testpunkt ist in einer leeren Region nicht enthalten (kein Punkt der Region stimmt mit dem Punkt überein). Sind alle Regionen leer, wird ebenfalls IsInsideIsInsideIsInsideIsInsideIsInsideisInside auf FALSE gesetzt. Ein leere Region verhält sich also genauso, als wenn sie nicht vorhanden wäre.

Parallelisierung

Parameter

RegionsRegionsRegionsRegionsRegionsregions (input_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject

Zu untersuchende Region(en).

RowRowRowRowRowrow (input_control)  point.y HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Zeilenindex des Testpunktes.

Defaultwert: 100

Typischer Wertebereich: 0 ≤ Row Row Row Row Row row ≤ 512 (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

ColumnColumnColumnColumnColumncolumn (input_control)  point.x HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Spaltenindex des Testpunktes.

Defaultwert: 100

Typischer Wertebereich: 0 ≤ Column Column Column Column Column column ≤ 512 (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

IsInsideIsInsideIsInsideIsInsideIsInsideisInside (output_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

boolscher Ergebniswert.

Komplexität

Sei F die Fläche einer Region und N die Anzahl der Regionen, dann beträgt die mittlere Laufzeitkomplexität O(ln(sqrt(F)) * N).

Ergebnis

test_region_pointtest_region_pointTestRegionPointtest_region_pointTestRegionPointTestRegionPoint liefert den Wert 2 (H_MSG_TRUE), falls eine Region den Testpunkt enthält. Ist dies nicht der Fall, gibt test_region_pointtest_region_pointTestRegionPointtest_region_pointTestRegionPointTestRegionPoint 3 (H_MSG_FALSE) aus. Das Verhalten bei leerer Eingabe (keine Eingaberegionen vorhanden) lässt sich mittels set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

thresholdthresholdThresholdthresholdThresholdThreshold, regiongrowingregiongrowingRegiongrowingregiongrowingRegiongrowingRegiongrowing, connectionconnectionConnectionconnectionConnectionConnection

Alternativen

union1union1Union1union1Union1Union1, intersectionintersectionIntersectionintersectionIntersectionIntersection, area_centerarea_centerAreaCenterarea_centerAreaCenterAreaCenter

Siehe auch

select_region_pointselect_region_pointSelectRegionPointselect_region_pointSelectRegionPointSelectRegionPoint

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren