get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1Rect (Operator)

Name

get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1Rect — Zugriff auf Bilddatenzeiger und Bildpunkte innerhalb des kleinsten umschließenden Rechtecks der Domäne des Eingabebildes.

Signatur

get_image_pointer1_rect(Image : : : PixelPointer, Width, Height, VerticalPitch, HorizontalBitPitch, BitsPerPixel)

Herror get_image_pointer1_rect(const Hobject Image, Hlong* PixelPointer, Hlong* Width, Hlong* Height, Hlong* VerticalPitch, Hlong* HorizontalBitPitch, Hlong* BitsPerPixel)

Herror T_get_image_pointer1_rect(const Hobject Image, Htuple* PixelPointer, Htuple* Width, Htuple* Height, Htuple* VerticalPitch, Htuple* HorizontalBitPitch, Htuple* BitsPerPixel)

void GetImagePointer1Rect(const HObject& Image, HTuple* PixelPointer, HTuple* Width, HTuple* Height, HTuple* VerticalPitch, HTuple* HorizontalBitPitch, HTuple* BitsPerPixel)

void* HImage::GetImagePointer1Rect(Hlong* Width, Hlong* Height, Hlong* VerticalPitch, Hlong* HorizontalBitPitch, Hlong* BitsPerPixel) const

static void HOperatorSet.GetImagePointer1Rect(HObject image, out HTuple pixelPointer, out HTuple width, out HTuple height, out HTuple verticalPitch, out HTuple horizontalBitPitch, out HTuple bitsPerPixel)

IntPtr HImage.GetImagePointer1Rect(out int width, out int height, out int verticalPitch, out int horizontalBitPitch, out int bitsPerPixel)

Beschreibung

Der Operator get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1RectGetImagePointer1Rect liefert den Zeiger PixelPointerPixelPointerPixelPointerPixelPointerpixelPointer auf den Anfang der Bilddaten, die sich innerhalb des kleinsten umschließenden Rechtecks der Domäne von ImageImageImageImageimage befinden. VerticalPitchVerticalPitchVerticalPitchVerticalPitchverticalPitch entspricht der Breite des Eingabebildes ImageImageImageImageimage mal der Anzahl der Bytes pro Pixel (HorizontalBitPitchHorizontalBitPitchHorizontalBitPitchHorizontalBitPitchhorizontalBitPitch / 8). WidthWidthWidthWidthwidth und HeightHeightHeightHeightheight entsprechen der Größe des kleinsten umschließenden Rechtecks der Eingaberegion. HorizontalBitPitchHorizontalBitPitchHorizontalBitPitchHorizontalBitPitchhorizontalBitPitch ist der horizontale Abstand (in Bits) benachbarter Pixel. BitsPerPixelBitsPerPixelBitsPerPixelBitsPerPixelbitsPerPixel ist die Anzahl der verwendeten Bits pro Pixel. get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1RectGetImagePointer1Rect ist symmetrisch zu gen_image1_rectgen_image1_rectGenImage1RectGenImage1RectGenImage1Rect.

Achtung

get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1RectGetImagePointer1Rect sollte nur zum Eintragen in neu erzeugte Bilder verwendet werden, da sonst die Grauwerte von anderen Bildern überschrieben werden könnten (siehe relationale Struktur).

Ausführungsinformationen

Parameter

ImageImageImageImageimage (input_object)  singlechannelimage objectHImageHImageHobject (byte / uint2 / int4)

Eingabebild (Himage).

PixelPointerPixelPointerPixelPointerPixelPointerpixelPointer (output_control)  pointer HTupleHTupleHtuple (integer) (IntPtr) (Hlong) (Hlong)

Zeiger auf die Bilddaten.

WidthWidthWidthWidthwidth (output_control)  extent.x HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Breite des Ausgabebildes.

HeightHeightHeightHeightheight (output_control)  extent.y HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Höhe des Ausgabebildes.

VerticalPitchVerticalPitchVerticalPitchVerticalPitchverticalPitch (output_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Breite(Eingabebild)*(HorizontalBitPitch/8).

HorizontalBitPitchHorizontalBitPitchHorizontalBitPitchHorizontalBitPitchhorizontalBitPitch (output_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Abstand benachbarter Pixel in Bits.

BitsPerPixelBitsPerPixelBitsPerPixelBitsPerPixelbitsPerPixel (output_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl verwendeter Bits pro Pixel.

Beispiel (C)

Hobject       image,reg,imagereduced;
char          typ[128];
Hlong          width,height,vert_pitch,hori_bit_pitch,bits_per_pix, winID;
unsigned char *ptr;

open_window(0,0,512,512,"black",winID);
read_image(&image,"monkey");
draw_region(&reg,winID);
reduce_domain(image,reg,&imagereduced);
get_image_pointer1_rect(imagereduced,(Hlong*)&ptr,&width,&height,
                        &vert_pitch,&hori_bit_pitch,&bits_per_pix);

Ergebnis

get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1RectGetImagePointer1Rect liefert den Wert 2 (H_MSG_TRUE), falls genau ein Bild übergeben wurde. 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.

Vorgänger

read_imageread_imageReadImageReadImageReadImage, gen_image1_rectgen_image1_rectGenImage1RectGenImage1RectGenImage1Rect

Alternativen

set_grayvalset_grayvalSetGrayvalSetGrayvalSetGrayval, get_grayvalget_grayvalGetGrayvalGetGrayvalGetGrayval, get_image_pointer3get_image_pointer3GetImagePointer3GetImagePointer3GetImagePointer3, get_image_pointer1get_image_pointer1GetImagePointer1GetImagePointer1GetImagePointer1

Siehe auch

paint_regionpaint_regionPaintRegionPaintRegionPaintRegion, paint_graypaint_grayPaintGrayPaintGrayPaintGray, gen_image1_rectgen_image1_rectGenImage1RectGenImage1RectGenImage1Rect

Modul

Foundation