Skip to content

convert_coordinates_window_to_imageConvertCoordinatesWindowToImageConvertCoordinatesWindowToImageconvert_coordinates_window_to_imageT_convert_coordinates_window_to_image🔗

Short description🔗

convert_coordinates_window_to_imageConvertCoordinatesWindowToImageConvertCoordinatesWindowToImageconvert_coordinates_window_to_imageT_convert_coordinates_window_to_image — Convert window coordinates to image coordinates

Signature🔗

convert_coordinates_window_to_image( window WindowHandle, coordinates.y RowWindow, coordinates.x ColumnWindow, out coordinates.y RowImage, out coordinates.x ColumnImage )void ConvertCoordinatesWindowToImage( const HTuple& WindowHandle, const HTuple& RowWindow, const HTuple& ColumnWindow, HTuple* RowImage, HTuple* ColumnImage )static void HOperatorSet.ConvertCoordinatesWindowToImage( HTuple windowHandle, HTuple rowWindow, HTuple columnWindow, out HTuple rowImage, out HTuple columnImage )def convert_coordinates_window_to_image( window_handle: HHandle, row_window: MaybeSequence[float], column_window: MaybeSequence[float] ) -> Tuple[Sequence[float], Sequence[float]]

def convert_coordinates_window_to_image_s( window_handle: HHandle, row_window: MaybeSequence[float], column_window: MaybeSequence[float] ) -> Tuple[float, float]Herror T_convert_coordinates_window_to_image( const Htuple WindowHandle, const Htuple RowWindow, const Htuple ColumnWindow, Htuple* RowImage, Htuple* ColumnImage )

void HWindow::ConvertCoordinatesWindowToImage( const HTuple& RowWindow, const HTuple& ColumnWindow, HTuple* RowImage, HTuple* ColumnImage ) const

void HWindow::ConvertCoordinatesWindowToImage( double RowWindow, double ColumnWindow, double* RowImage, double* ColumnImage ) const

void HWindow.ConvertCoordinatesWindowToImage( HTuple rowWindow, HTuple columnWindow, out HTuple rowImage, out HTuple columnImage )

void HWindow.ConvertCoordinatesWindowToImage( double rowWindow, double columnWindow, out double rowImage, out double columnImage )

Description🔗

convert_coordinates_window_to_imageConvertCoordinatesWindowToImage converts window coordinates RowWindowrowWindowrow_window and ColumnWindowcolumnWindowcolumn_window into image coordinates RowImagerowImagerow_image and ColumnImagecolumnImagecolumn_image based on the displayed image part and the window size of the window defined in WindowHandlewindowHandlewindow_handle.

Execution information🔗

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🔗

WindowHandlewindowHandlewindow_handle (input_control) window → (handle)HTuple (HHandle)HWindow, HTuple (IntPtr)HHandleHtuple (handle)

Window handle.

RowWindowrowWindowrow_window (input_control) coordinates.y(-array) → (real)HTuple (double)HTuple (double)MaybeSequence[float]Htuple (double)

Row (Y) in window coordinates.

ColumnWindowcolumnWindowcolumn_window (input_control) coordinates.x(-array) → (real)HTuple (double)HTuple (double)MaybeSequence[float]Htuple (double)

Column (X) in window coordinates.

RowImagerowImagerow_image (output_control) coordinates.y(-array) → (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)

Row in image coordinates.

ColumnImagecolumnImagecolumn_image (output_control) coordinates.x(-array) → (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)

Column in image coordinates.

Example🔗

(HDevelop)

read_image (Image, 'printer_chip/printer_chip_01')
dev_get_window (WindowHandle)
get_window_extents (WindowHandle, Row, Column, Width, Height)
dev_set_part (450, 300, 750, 600)
dev_display (Image)
*
* Generate rectangle in image coordinates
Row := [474, 746]
Column := [314, 589]
gen_rectangle1 (Rectangle1, Row[0], Column[0], Row[1], Column[1])
* Convert rectangle corner points to window coordinates
convert_coordinates_image_to_window (WindowHandle, Row[[0,1,0,1]], \
    Column[[0,0,1,1]], RowWindow, ColumnWindow)
*
* Window center in window coordinates
WindowCenterRow := Height/2-1
WindowCenterColumn := Width/2-1
* Convert window center to image coordinates
convert_coordinates_window_to_image (WindowHandle, WindowCenterRow, \
    WindowCenterColumn, RowImage, ColumnImage)
*
* Display all points in image coordinates
dev_display (Image)
disp_cross (WindowHandle, Row[[0,1,0,1]], Column[[0,0,1,1]], 6, rad(45))
disp_cross (WindowHandle, RowImage, ColumnImage, 6, 0)

Result🔗

convert_coordinates_window_to_imageConvertCoordinatesWindowToImage returns 2 (H_MSG_TRUE) if the window is valid. Otherwise an exception is raised.

Combinations with other operators🔗

Combinations

Possible predecessors

set_window_extentsSetWindowExtents, set_partSetPart

See also

convert_coordinates_image_to_windowConvertCoordinatesImageToWindow

Module🔗

Foundation