bit_andbit_andBitAndBitAnd (Operator)

Name

bit_andbit_andBitAndBitAnd — Bitweises AND aller Pixel der Eingabebilder.

Signatur

bit_and(Image1, Image2 : ImageAnd : : )

Herror bit_and(const Hobject Image1, const Hobject Image2, Hobject* ImageAnd)

Herror T_bit_and(const Hobject Image1, const Hobject Image2, Hobject* ImageAnd)

void BitAnd(const HObject& Image1, const HObject& Image2, HObject* ImageAnd)

HImage HImage::BitAnd(const HImage& Image2) const

static void HOperatorSet.BitAnd(HObject image1, HObject image2, out HObject imageAnd)

HImage HImage.BitAnd(HImage image2)

Beschreibung

bit_andbit_andBitAndBitAndBitAnd berechnet das bitweise „and“ aller Pixel der Eingabebilder. Die Semantik der „and“ Operation entspricht der von C für die jeweiligen Typen (signed char, unsigned char, short, unsigned short, int/long). Die Bilder müssen die gleiche Bildgröße und den gleichen Pixeltyp haben. Es werden die Bildpunkte innerhalb des Definitionsbereiches des Bildes im ersten Parameter bearbeitet.

Es können mehrere Bilder pro Aufruf bearbeitet werden. In diesem Fall enthalten beide Eingabeparameter gleich viele Bilder, die dann paarweise abgearbeitet werden. Zu jedem Paar wird ein Ausgabebild erzeugt.

Ausführungsinformationen

Parameter

Image1Image1Image1Image1image1 (input_object)  (multichannel-)image(-array) objectHImageHImageHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4)

Eingabebild(er) 1.

Image2Image2Image2Image2image2 (input_object)  (multichannel-)image(-array) objectHImageHImageHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4)

Eingabebild(er) 2.

ImageAndImageAndImageAndImageAndimageAnd (output_object)  (multichannel-)image(-array) objectHImageHImageHobject * (byte / direction / cyclic / int1 / int2 / uint2 / int4)

Ergebnis(se) der AND-Operation.

Beispiel (HDevelop)

read_image(Image1,'fabrik')
dev_display (Image1)
read_image(Image2,'monkey')
dev_display (Image2)
bit_and(Image1,Image2,ImageBitAnd)
dev_display (ImageBitAnd)

Beispiel (C)

read_image(&Image1,"monkey");
disp_image(Image1,WindowHandle);
read_image(&Image2,"fabrik");
disp_image(Image2,WindowHandle);
bit_and(Image1,Image2,&ImageBitAnd);
disp_image(ImageBitAnd,WindowHandle);

Beispiel (HDevelop)

read_image(Image1,'fabrik')
dev_display (Image1)
read_image(Image2,'monkey')
dev_display (Image2)
bit_and(Image1,Image2,ImageBitAnd)
dev_display (ImageBitAnd)

Beispiel (HDevelop)

read_image(Image1,'fabrik')
dev_display (Image1)
read_image(Image2,'monkey')
dev_display (Image2)
bit_and(Image1,Image2,ImageBitAnd)
dev_display (ImageBitAnd)

Beispiel (HDevelop)

read_image(Image1,'fabrik')
dev_display (Image1)
read_image(Image2,'monkey')
dev_display (Image2)
bit_and(Image1,Image2,ImageBitAnd)
dev_display (ImageBitAnd)

Ergebnis

Sind die Bilder korrekt (Typ und Anzahl), dann liefert bit_andbit_andBitAndBitAndBitAnd den Wert 2 (H_MSG_TRUE). Das Verhalten bei leerer Eingabe (keine Eingabebilder 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>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Alternativen

bit_maskbit_maskBitMaskBitMaskBitMask, add_imageadd_imageAddImageAddImageAddImage, max_imagemax_imageMaxImageMaxImageMaxImage

Siehe auch

bit_maskbit_maskBitMaskBitMaskBitMask, add_imageadd_imageAddImageAddImageAddImage, max_imagemax_imageMaxImageMaxImageMaxImage

Modul

Foundation