Skip to content

convert_coordinates_image_to_windowConvertCoordinatesImageToWindowConvertCoordinatesImageToWindowconvert_coordinates_image_to_windowT_convert_coordinates_image_to_window🔗

Short description🔗

convert_coordinates_image_to_windowConvertCoordinatesImageToWindowConvertCoordinatesImageToWindowconvert_coordinates_image_to_windowT_convert_coordinates_image_to_window — Convert image coordinates to window coordinates

Signature🔗

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

def convert_coordinates_image_to_window_s( window_handle: HHandle, row_image: MaybeSequence[float], column_image: MaybeSequence[float] ) -> Tuple[float, float]Herror T_convert_coordinates_image_to_window( const Htuple WindowHandle, const Htuple RowImage, const Htuple ColumnImage, Htuple* RowWindow, Htuple* ColumnWindow )

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

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

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

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

Description🔗

convert_coordinates_image_to_windowConvertCoordinatesImageToWindow converts image coordinates RowImagerowImagerow_image and ColumnImagecolumnImagecolumn_image into window coordinates RowWindowrowWindowrow_window and ColumnWindowcolumnWindowcolumn_window 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

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

Row in image coordinates.

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

Column in image coordinates.

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

Row (Y) in window coordinates.

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

Column (X) in window 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_image_to_windowConvertCoordinatesImageToWindow 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_window_to_imageConvertCoordinatesWindowToImage

Module🔗

Foundation