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(®,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