bit_lshift
— Links-Shift aller Pixel des Bildes.
bit_lshift(Image : ImageLShift : Shift : )
bit_lshift
berechnet einen bitweisen „links-Shift“
aller Pixel des Eingabebildes.
Die Semantik der „links-Shift“ Operation entspricht der von C
(„<<“) für die
jeweiligen Typen (signed char, unsigned char, short, unsigned short, int/long).
Tritt ein Überlauf auf, so wird das Ergebnis auf den maximalen
Wert des jeweiligen Pixeltyps begrenzt.
Es werden nur die Bildpunkte innerhalb des Definitionsbereiches
des Bildes bearbeitet.
Es können mehrere Bilder pro Aufruf bearbeitet werden. Zu jedem Eingabebild wird ein Ausgabebild erzeugt.
Image
(input_object) (multichannel-)image(-array) →
object (byte / direction / cyclic / int1 / int2 / uint2 / int4)
Eingabebild(er).
ImageLShift
(output_object) (multichannel-)image(-array) →
object (byte / direction / cyclic / int1 / int2 / uint2 / int4)
Ergebnis(se) der Shift-Operation.
Shift
(input_control) integer →
(integer)
Shift-Wert.
Defaultwert: 3
Wertevorschläge: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20, 24, 30, 31
Typischer Wertebereich: 0
≤
Shift
≤
31
Minimale Schrittweite: 1
Empfohlene Schrittweite: 1
Restriktion: Shift >= 1 && Shift <= 31
read_image(&ByteImage,"fabrik"); convert_image_type(ByteImage,&Int2Image,"int2"); bit_lshift(Int2Image,&FullInt2Image,8);
Sind die Bilder korrekt (Typ) und hat
Shift
eine gültigen Wert, dann liefert bit_lshift
den Wert 2 (H_MSG_TRUE).
Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt
sich mittels set_system(::'no_object_result',<Result>:)
festlegen.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Foundation