convert_coordinates_window_to_imageT_convert_coordinates_window_to_imageConvertCoordinatesWindowToImageConvertCoordinatesWindowToImage (Operator)
Name
convert_coordinates_window_to_imageT_convert_coordinates_window_to_imageConvertCoordinatesWindowToImageConvertCoordinatesWindowToImage
— Konvertieren von Fensterkoordinaten in Bildkoordinaten
Signatur
void ConvertCoordinatesWindowToImage(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
static void HOperatorSet.ConvertCoordinatesWindowToImage(HTuple windowHandle, HTuple rowWindow, HTuple columnWindow, out HTuple rowImage, out HTuple columnImage)
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)
Beschreibung
convert_coordinates_window_to_imageconvert_coordinates_window_to_imageConvertCoordinatesWindowToImageConvertCoordinatesWindowToImageConvertCoordinatesWindowToImage
konvertiert Fensterkoordinaten
RowWindowRowWindowRowWindowRowWindowrowWindow
und ColumnWindowColumnWindowColumnWindowColumnWindowcolumnWindow
in Bildkoordinaten
RowImageRowImageRowImageRowImagerowImage
und ColumnImageColumnImageColumnImageColumnImagecolumnImage
basierend auf dem Bildausschnitt
und der Fenstergröße des durch WindowHandleWindowHandleWindowHandleWindowHandlewindowHandle
gegebenen Fensters.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
WindowHandleWindowHandleWindowHandleWindowHandlewindowHandle
(input_control) window →
HWindow, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Fenster-Handle.
RowWindowRowWindowRowWindowRowWindowrowWindow
(input_control) coordinates.y(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Zeile (Y) in Fensterkoordinaten.
ColumnWindowColumnWindowColumnWindowColumnWindowcolumnWindow
(input_control) coordinates.x(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Spalte (X) in Fensterkoordinaten.
RowImageRowImageRowImageRowImagerowImage
(output_control) coordinates.y(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Zeile in Bildkoordinaten.
ColumnImageColumnImageColumnImageColumnImagecolumnImage
(output_control) coordinates.x(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Spalte in Bildkoordinaten.
Beispiel (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)
Ergebnis
convert_coordinates_window_to_imageconvert_coordinates_window_to_imageConvertCoordinatesWindowToImageConvertCoordinatesWindowToImageConvertCoordinatesWindowToImage
liefert den Wert 2 (H_MSG_TRUE), falls das
Fenster gültig ist. Ansonsten wird eine Fehlerbehandlung durchgeführt.
Vorgänger
set_window_extentsset_window_extentsSetWindowExtentsSetWindowExtentsSetWindowExtents
,
set_partset_partSetPartSetPartSetPart
Siehe auch
convert_coordinates_image_to_windowconvert_coordinates_image_to_windowConvertCoordinatesImageToWindowConvertCoordinatesImageToWindowConvertCoordinatesImageToWindow
Modul
Foundation