gen_checker_regiongen_checker_regionGenCheckerRegionGenCheckerRegiongen_checker_region (Operator)

Name

gen_checker_regiongen_checker_regionGenCheckerRegionGenCheckerRegiongen_checker_region — Erzeugen einer schachbrettartigen Region.

Signatur

gen_checker_region( : RegionChecker : WidthRegion, HeightRegion, WidthPattern, HeightPattern : )

Herror gen_checker_region(Hobject* RegionChecker, const Hlong WidthRegion, const Hlong HeightRegion, const Hlong WidthPattern, const Hlong HeightPattern)

Herror T_gen_checker_region(Hobject* RegionChecker, const Htuple WidthRegion, const Htuple HeightRegion, const Htuple WidthPattern, const Htuple HeightPattern)

void GenCheckerRegion(HObject* RegionChecker, const HTuple& WidthRegion, const HTuple& HeightRegion, const HTuple& WidthPattern, const HTuple& HeightPattern)

void HRegion::GenCheckerRegion(Hlong WidthRegion, Hlong HeightRegion, Hlong WidthPattern, Hlong HeightPattern)

static void HOperatorSet.GenCheckerRegion(out HObject regionChecker, HTuple widthRegion, HTuple heightRegion, HTuple widthPattern, HTuple heightPattern)

void HRegion.GenCheckerRegion(int widthRegion, int heightRegion, int widthPattern, int heightPattern)

def gen_checker_region(width_region: int, height_region: int, width_pattern: int, height_pattern: int) -> HObject

Beschreibung

gen_checker_regiongen_checker_regionGenCheckerRegionGenCheckerRegionGenCheckerRegiongen_checker_region liefert eine schachbrettartige Region. Dabei gehören jeweils die schwarzen Felder des Schachbretts zur Region. Die horizontale und vertikale Ausdehnung der Region wird durch WidthRegionWidthRegionWidthRegionWidthRegionwidthRegionwidth_region bzw. HeightRegionHeightRegionHeightRegionHeightRegionheightRegionheight_region begrenzt, die Größe der Felder des Schachbrettes durch WidthPatternWidthPatternWidthPatternWidthPatternwidthPatternwidth_pattern * HeightPatternHeightPatternHeightPatternHeightPatternheightPatternheight_pattern.

Achtung

Wird das Muster sehr klein gewählt (WidthPatternWidthPatternWidthPatternWidthPatternwidthPatternwidth_pattern < 4) und die Begrenzung groß, so benötigt die erzeugte Region viel Speicher.

Ausführungsinformationen

Parameter

RegionCheckerRegionCheckerRegionCheckerRegionCheckerregionCheckerregion_checker (output_object)  region objectHRegionHObjectHRegionHobject *

Erzeugte Schachbrett-Region.

WidthRegionWidthRegionWidthRegionWidthRegionwidthRegionwidth_region (input_control)  extent.x HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Größter auftretender x-Wert der Region.

Defaultwert: 511

Wertevorschläge: 10, 20, 31, 63, 127, 255, 300, 400, 511

Typischer Wertebereich: 1 ≤ WidthRegion WidthRegion WidthRegion WidthRegion widthRegion width_region (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 10

HeightRegionHeightRegionHeightRegionHeightRegionheightRegionheight_region (input_control)  extent.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Größter auftretender y-Wert der Region.

Defaultwert: 511

Wertevorschläge: 10, 20, 31, 63, 127, 255, 300, 400, 511

Typischer Wertebereich: 1 ≤ HeightRegion HeightRegion HeightRegion HeightRegion heightRegion height_region (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 10

WidthPatternWidthPatternWidthPatternWidthPatternwidthPatternwidth_pattern (input_control)  extent.x HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Breite eines Feldes des Schachbrettes.

Defaultwert: 64

Wertevorschläge: 1, 2, 4, 8, 16, 20, 32, 64, 100, 128, 200, 300, 500

Typischer Wertebereich: 1 ≤ WidthPattern WidthPattern WidthPattern WidthPattern widthPattern width_pattern (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 10

Restriktion: WidthPattern < WidthRegion

HeightPatternHeightPatternHeightPatternHeightPatternheightPatternheight_pattern (input_control)  extent.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Höhe eines Feldes des Schachbrettes.

Defaultwert: 64

Wertevorschläge: 1, 2, 4, 8, 16, 20, 32, 64, 100, 128, 200, 300, 500

Typischer Wertebereich: 1 ≤ HeightPattern HeightPattern HeightPattern HeightPattern heightPattern height_pattern (lin)

Minimale Schrittweite: 1

Empfohlene Schrittweite: 10

Restriktion: HeightPattern < HeightRegion

Beispiel (HDevelop)

gen_checker_region(Checker,512,512,32,64)
dev_set_draw('fill')
dev_display (Checker)

Komplexität

Der benötigte Speicher (in Byte) für die Region ist:

O((WidthRegionWidthRegionWidthRegionWidthRegionwidthRegionwidth_region * HeightRegionHeightRegionHeightRegionHeightRegionheightRegionheight_region) / WidthPatternWidthPatternWidthPatternWidthPatternwidthPatternwidth_pattern)

Ergebnis

Sind die Parameterwerte korrekt, dann liefert gen_checker_regiongen_checker_regionGenCheckerRegionGenCheckerRegionGenCheckerRegiongen_checker_region den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt. Das Clipping am aktuellen Bildformat wird durch set_system('clip_region',<'true'/'false'>)set_system("clip_region",<"true"/"false">)SetSystem("clip_region",<"true"/"false">)SetSystem("clip_region",<"true"/"false">)SetSystem("clip_region",<"true"/"false">)set_system("clip_region",<"true"/"false">) festgelegt.

Nachfolger

paint_regionpaint_regionPaintRegionPaintRegionPaintRegionpaint_region

Alternativen

gen_grid_regiongen_grid_regionGenGridRegionGenGridRegionGenGridRegiongen_grid_region, gen_region_polygon_filledgen_region_polygon_filledGenRegionPolygonFilledGenRegionPolygonFilledGenRegionPolygonFilledgen_region_polygon_filled, gen_region_pointsgen_region_pointsGenRegionPointsGenRegionPointsGenRegionPointsgen_region_points, gen_region_runsgen_region_runsGenRegionRunsGenRegionRunsGenRegionRunsgen_region_runs, gen_rectangle1gen_rectangle1GenRectangle1GenRectangle1GenRectangle1gen_rectangle1, concat_objconcat_objConcatObjConcatObjConcatObjconcat_obj, gen_random_regiongen_random_regionGenRandomRegionGenRandomRegionGenRandomRegiongen_random_region, gen_random_regionsgen_random_regionsGenRandomRegionsGenRandomRegionsGenRandomRegionsgen_random_regions

Siehe auch

reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain

Modul

Foundation