clip_region_relclip_region_relClipRegionRelClipRegionRel (Operator)

Name

clip_region_relclip_region_relClipRegionRelClipRegionRel — Beschneiden der Region relativ zu ihrem kleinsten umschließenden Rechteck.

Signatur

clip_region_rel(Region : RegionClipped : Top, Bottom, Left, Right : )

Herror clip_region_rel(const Hobject Region, Hobject* RegionClipped, const Hlong Top, const Hlong Bottom, const Hlong Left, const Hlong Right)

Herror T_clip_region_rel(const Hobject Region, Hobject* RegionClipped, const Htuple Top, const Htuple Bottom, const Htuple Left, const Htuple Right)

void ClipRegionRel(const HObject& Region, HObject* RegionClipped, const HTuple& Top, const HTuple& Bottom, const HTuple& Left, const HTuple& Right)

HRegion HRegion::ClipRegionRel(Hlong Top, Hlong Bottom, Hlong Left, Hlong Right) const

static void HOperatorSet.ClipRegionRel(HObject region, out HObject regionClipped, HTuple top, HTuple bottom, HTuple left, HTuple right)

HRegion HRegion.ClipRegionRel(int top, int bottom, int left, int right)

Beschreibung

clip_region_relclip_region_relClipRegionRelClipRegionRelClipRegionRel verkleinert die RegionRegionRegionRegionregion dadurch, dass Bereiche weggeschnitten werden, die nahe am kleinsten umschließenden Rechteck der RegionRegionRegionRegionregion liegen. Konkret bedeutet das, dass der Durchschnitt der RegionRegionRegionRegionregion mit einem Rechteck gebildet wird, welches kleiner als oder gleich groß wie das kleinste umschließende Rechteck ist. Die resultierende verkleinerte Region wird in RegionClippedRegionClippedRegionClippedRegionClippedregionClipped zurückgegeben.

Das Rechteck, mit dem die RegionRegionRegionRegionregion geschnitten wird, wird dadurch bestimmt, dass das kleinste umschließende achsenparallele Rechteck oben, unten, links und rechts jeweils um die Werte TopTopTopToptop, BottomBottomBottomBottombottom, LeftLeftLeftLeftleft und RightRightRightRightright verkleinert wird.

Bottom = 0 Top = 10 Right = 20 Left = 10 Region RegionClipped
(1) (2)
Region mit kleinstem umschließenden Rechteck (1) und geschnittene Region (2).

Diese vier Werte müssen größer oder gleich Null sein. Werden alle vier Werte auf Null gesetzt, so ist RegionClippedRegionClippedRegionClippedRegionClippedregionClipped identisch mit der Eingaberegion.

Ausführungsinformationen

Parameter

RegionRegionRegionRegionregion (input_object)  region(-array) objectHRegionHRegionHobject

Zu transformierende Regionen.

RegionClippedRegionClippedRegionClippedRegionClippedregionClipped (output_object)  region(-array) objectHRegionHRegionHobject *

Beschnittene Regionen.

TopTopTopToptop (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl Zeilen die „oben“ abgeschnitten werden.

Defaultwert: 1

Wertevorschläge: 0, 1, 2, 3, 4, 5, 7, 10, 20, 30, 50

Typischer Wertebereich: 0 ≤ Top Top Top Top top (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

BottomBottomBottomBottombottom (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl Zeilen die „unten“ abgeschnitten werden.

Defaultwert: 1

Wertevorschläge: 0, 1, 2, 3, 4, 5, 7, 10, 20, 30, 50

Typischer Wertebereich: 0 ≤ Bottom Bottom Bottom Bottom bottom (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

LeftLeftLeftLeftleft (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl Spalten die „links“ abgeschnitten werden.

Defaultwert: 1

Wertevorschläge: 0, 1, 2, 3, 4, 5, 7, 10, 20, 30, 50

Typischer Wertebereich: 0 ≤ Left Left Left Left left (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

RightRightRightRightright (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl Zeilen die „rechts“ abgeschnitten werden.

Defaultwert: 1

Wertevorschläge: 0, 1, 2, 3, 4, 5, 7, 10, 20, 30, 50

Typischer Wertebereich: 0 ≤ Right Right Right Right right (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 1

Ergebnis

clip_region_relclip_region_relClipRegionRelClipRegionRelClipRegionRel liefert den Wert 2 (H_MSG_TRUE), falls die Parameter korrekt sind. 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>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>), das bei leerer Region mit set_system('empty_region_result',<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

thresholdthresholdThresholdThresholdThreshold, connectionconnectionConnectionConnectionConnection, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowing, pouringpouringPouringPouringPouring

Nachfolger

select_shapeselect_shapeSelectShapeSelectShapeSelectShape, disp_regiondisp_regionDispRegionDispRegionDispRegion

Alternativen

smallest_rectangle1smallest_rectangle1SmallestRectangle1SmallestRectangle1SmallestRectangle1, intersectionintersectionIntersectionIntersectionIntersection, gen_rectangle1gen_rectangle1GenRectangle1GenRectangle1GenRectangle1, clip_regionclip_regionClipRegionClipRegionClipRegion

Modul

Foundation