paint_regionpaint_regionPaintRegionPaintRegionpaint_region (Operator)
Name
paint_regionpaint_regionPaintRegionPaintRegionpaint_region — Zeichnet Regionen in ein Bild ein.
Signatur
void PaintRegion(const HObject& Region, const HObject& Image, HObject* ImageResult, const HTuple& Grayval, const HTuple& Type)
HImage HImage::PaintRegion(const HRegion& Region, const HTuple& Grayval, const HString& Type) const
HImage HImage::PaintRegion(const HRegion& Region, double Grayval, const HString& Type) const
HImage HImage::PaintRegion(const HRegion& Region, double Grayval, const char* Type) const
HImage HImage::PaintRegion(const HRegion& Region, double Grayval, const wchar_t* Type) const
(
Nur Windows)
HImage HRegion::PaintRegion(const HImage& Image, const HTuple& Grayval, const HString& Type) const
HImage HRegion::PaintRegion(const HImage& Image, double Grayval, const HString& Type) const
HImage HRegion::PaintRegion(const HImage& Image, double Grayval, const char* Type) const
HImage HRegion::PaintRegion(const HImage& Image, double Grayval, const wchar_t* Type) const
(
Nur Windows)
static void HOperatorSet.PaintRegion(HObject region, HObject image, out HObject imageResult, HTuple grayval, HTuple type)
HImage HImage.PaintRegion(HRegion region, HTuple grayval, string type)
HImage HImage.PaintRegion(HRegion region, double grayval, string type)
HImage HRegion.PaintRegion(HImage image, HTuple grayval, string type)
HImage HRegion.PaintRegion(HImage image, double grayval, string type)
def paint_region(region: HObject, image: HObject, grayval: MaybeSequence[Union[int, float]], type: str) -> HObject
Beschreibung
paint_regionpaint_regionPaintRegionPaintRegionpaint_region zeichnet die Regionen aus RegionRegionRegionregionregion in das Bild
ImageImageImageimageimage mit den vorgegebenen Grauwerten GrayvalGrayvalGrayvalgrayvalgrayval ein und
liefert das Ergebnis in ImageResultImageResultImageResultimageResultimage_result zurück. Die Grauwerte können
entweder einmal für jeden Bildkanal, geltend für alle Regionen, definiert
werden, oder für jede Region und jeden Bildkanal einzeln. Um Letzteres zu
definieren, werden die Kanal-Grauwerte g zu jeder Region
gruppiert und zu einem Tupel entsprechend der Reihenfolge der Regionen
verknüpft, z.B. für ein dreikanaliges Bild:
[g(channel1,region1), g(channel2,region1), g(channel3,region1), g(channel1,region2), ... ].
Ist das Eingabebild vom Typ direction, werden Grauwerte, die nicht
innerhalb des für direction-Bilder erlaubten Wertebereichs liegen,
auf den Wert 255 gesetzt, um sie als ungültig zu kennzeichnen.
Der Parameter TypeTypeTypetypetype gibt an, ob die Regionen ausgefüllt
('fill'"fill""fill""fill""fill") oder nur der Rand ('margin'"margin""margin""margin""margin") eingetragen werden
soll.
Als Alternative zu paint_regionpaint_regionPaintRegionPaintRegionpaint_region zeichnet der Operator
overpaint_regionoverpaint_regionOverpaintRegionOverpaintRegionoverpaint_region die Regionen direkt in ImageImageImageimageimage
ein.
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.
Parameter
RegionRegionRegionregionregion (input_object) region(-array) → objectHRegionHObjectHObjectHobject
Regionen, die eingezeichnet werden sollen.
ImageImageImageimageimage (input_object) (multichannel-)image → objectHImageHObjectHObjectHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real / complex)
Bild, in das die Regionen eingezeichnet werden.
ImageResultImageResultImageResultimageResultimage_result (output_object) image → objectHImageHObjectHObjectHobject * (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real / complex)
Bild, in das die Regionen eingezeichnet wurden.
GrayvalGrayvalGrayvalgrayvalgrayval (input_control) number(-array) → HTupleMaybeSequence[Union[int, float]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Mit diesen Grauwerten werden die Regionen in
ImageResultImageResultImageResultimageResultimage_result eingetragen.
Default:
255.0
Wertevorschläge:
0.0, 1.0, 2.0, 5.0, 10.0, 16.0, 32.0, 64.0, 128.0, 253.0, 254.0, 255.0
TypeTypeTypetypetype (input_control) string → HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Regionen ausfüllen oder nur den Rand eintragen.
Default:
'fill'
"fill"
"fill"
"fill"
"fill"
Werteliste:
'fill'"fill""fill""fill""fill", 'margin'"margin""margin""margin""margin"
Beispiel (HDevelop)
* Paint a rectangle into the image 'monkey'
read_image(Image,'monkey')
gen_rectangle1(Rectangle,100.0,100.0,300.0,300.0)
* paint a white rectangle
paint_region(Rectangle,Image,ImageResult,255.0,'fill')
Beispiel (C)
/* Paint a rectangle into the image 'monkey' */
read_image(&Image,"monkey");
gen_rectangle1(&Rectangle,100.0,100.0,300.0,300.0);
/* paint a white rectangle */
paint_region(Rectangle,Image,&ImageResult,255.0,"fill");
Beispiel (HDevelop)
* Paint a rectangle into the image 'monkey'
read_image(Image,'monkey')
gen_rectangle1(Rectangle,100.0,100.0,300.0,300.0)
* paint a white rectangle
paint_region(Rectangle,Image,ImageResult,255.0,'fill')
Beispiel (HDevelop)
* Paint a rectangle into the image 'monkey'
read_image(Image,'monkey')
gen_rectangle1(Rectangle,100.0,100.0,300.0,300.0)
* paint a white rectangle
paint_region(Rectangle,Image,ImageResult,255.0,'fill')
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
paint_regionpaint_regionPaintRegionPaintRegionpaint_region den Wert 2 (
H_MSG_TRUE)
. 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>)set_system("no_object_result",<Result>) festlegen.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
read_imageread_imageReadImageReadImageread_image,
gen_image_constgen_image_constGenImageConstGenImageConstgen_image_const,
gen_image_protogen_image_protoGenImageProtoGenImageProtogen_image_proto,
reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain
Alternativen
set_grayvalset_grayvalSetGrayvalSetGrayvalset_grayval,
overpaint_regionoverpaint_regionOverpaintRegionOverpaintRegionoverpaint_region,
paint_xldpaint_xldPaintXldPaintXldpaint_xld
Siehe auch
reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain,
paint_graypaint_grayPaintGrayPaintGraypaint_gray,
overpaint_grayoverpaint_grayOverpaintGrayOverpaintGrayoverpaint_gray,
set_drawset_drawSetDrawSetDrawset_draw,
gen_image_constgen_image_constGenImageConstGenImageConstgen_image_const
Modul
Foundation