Operator Reference

get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1Rectget_image_pointer1_rect (Operator)

get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1Rectget_image_pointer1_rect — Access to the image data pointer and the image data inside the smallest rectangle of the domain of the input image.

Signature

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)

def get_image_pointer1_rect(image: HObject) -> Tuple[int, int, int, int, int, int]

Description

The operator get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1Rectget_image_pointer1_rect returns the pointer PixelPointerPixelPointerPixelPointerpixelPointerpixel_pointer which points to the beginning of the image data inside the smallest rectangle of the domain of ImageImageImageimageimage. VerticalPitchVerticalPitchVerticalPitchverticalPitchvertical_pitch corresponds to the width of the input image ImageImageImageimageimage multiplied with the number of bytes per pixel (HorizontalBitPitchHorizontalBitPitchHorizontalBitPitchhorizontalBitPitchhorizontal_bit_pitch / 8). WidthWidthWidthwidthwidth and HeightHeightHeightheightheight correspond to the size of the smallest rectangle of the input region. HorizontalBitPitchHorizontalBitPitchHorizontalBitPitchhorizontalBitPitchhorizontal_bit_pitch is the horizontal distance (in bits) between two neighboring pixels. BitsPerPixelBitsPerPixelBitsPerPixelbitsPerPixelbits_per_pixel is the number of used bits per pixel. get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1Rectget_image_pointer1_rect is symmetrical to gen_image1_rectgen_image1_rectGenImage1RectGenImage1Rectgen_image1_rect.

Attention

The operator get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1Rectget_image_pointer1_rect should only be used for entry into newly created images, since otherwise the gray values of other images might be overwritten (see relational structure).

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Processed without parallelization.

Parameters

ImageImageImageimageimage (input_object)  singlechannelimage objectHImageHObjectHObjectHobject (byte / uint2 / int4)

Input image (HImage).

PixelPointerPixelPointerPixelPointerpixelPointerpixel_pointer (output_control)  pointer HTupleintHTupleHtuple (integer) (IntPtr) (Hlong) (Hlong)

Pointer to the image data.

WidthWidthWidthwidthwidth (output_control)  extent.x HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Width of the output image.

HeightHeightHeightheightheight (output_control)  extent.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Height of the output image.

VerticalPitchVerticalPitchVerticalPitchverticalPitchvertical_pitch (output_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Width(input image)*(HorizontalBitPitch/8).

HorizontalBitPitchHorizontalBitPitchHorizontalBitPitchhorizontalBitPitchhorizontal_bit_pitch (output_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Distance between two neighboring pixels in bits .

BitsPerPixelBitsPerPixelBitsPerPixelbitsPerPixelbits_per_pixel (output_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Number of used bits per pixel.

Example (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);

Result

The operator get_image_pointer1_rectget_image_pointer1_rectGetImagePointer1RectGetImagePointer1Rectget_image_pointer1_rect returns the value 2 ( H_MSG_TRUE) if exactly one image was passed. The behavior in case of empty input (no input images available) is set via the operator 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>). If necessary an exception is raised.

Possible Predecessors

read_imageread_imageReadImageReadImageread_image, gen_image1_rectgen_image1_rectGenImage1RectGenImage1Rectgen_image1_rect

Alternatives

set_grayvalset_grayvalSetGrayvalSetGrayvalset_grayval, get_grayvalget_grayvalGetGrayvalGetGrayvalget_grayval, get_image_pointer3get_image_pointer3GetImagePointer3GetImagePointer3get_image_pointer3, get_image_pointer1get_image_pointer1GetImagePointer1GetImagePointer1get_image_pointer1

See also

paint_regionpaint_regionPaintRegionPaintRegionpaint_region, paint_graypaint_grayPaintGrayPaintGraypaint_gray, gen_image1_rectgen_image1_rectGenImage1RectGenImage1Rectgen_image1_rect

Module

Foundation