HALCON Reference Manual 10.0.2
Table of Contents / Graphics / Drawing ClassesClassesClasses | | | Operators

draw_line_moddraw_line_moddraw_line_modDrawLineModDrawLineMod (Operator)

Name

draw_line_moddraw_line_moddraw_line_modDrawLineModDrawLineMod — Draw a line.

Signature

draw_line_mod( : : WindowHandle, Row1In, Column1In, Row2In, Column2In : Row1, Column1, Row2, Column2)

Herror draw_line_mod(const Hlong WindowHandle, double Row1In, double Column1In, double Row2In, double Column2In, double* Row1, double* Column1, double* Row2, double* Column2)

Herror T_draw_line_mod(const Htuple WindowHandle, const Htuple Row1In, const Htuple Column1In, const Htuple Row2In, const Htuple Column2In, Htuple* Row1, Htuple* Column1, Htuple* Row2, Htuple* Column2)

Herror draw_line_mod(const HTuple& WindowHandle, const HTuple& Row1In, const HTuple& Column1In, const HTuple& Row2In, const HTuple& Column2In, double* Row1, double* Column1, double* Row2, double* Column2)

double HWindow::DrawLineMod(const HTuple& Row1In, const HTuple& Column1In, const HTuple& Row2In, const HTuple& Column2In, HTuple* Column1, HTuple* Row2, HTuple* Column2) const

void HOperatorSetX.DrawLineMod(
[in] VARIANT WindowHandle, [in] VARIANT Row1In, [in] VARIANT Column1In, [in] VARIANT Row2In, [in] VARIANT Column2In, [out] VARIANT* Row1, [out] VARIANT* Column1, [out] VARIANT* Row2, [out] VARIANT* Column2)

double HWindowX.DrawLineMod(
[in] double Row1In, [in] double Column1In, [in] double Row2In, [in] double Column2In, [out] double* Column1, [out] double* Row2, [out] double* Column2)

static void HOperatorSet.DrawLineMod(HTuple windowHandle, HTuple row1In, HTuple column1In, HTuple row2In, HTuple column2In, out HTuple row1, out HTuple column1, out HTuple row2, out HTuple column2)

void HWindow.DrawLineMod(double row1In, double column1In, double row2In, double column2In, out double row1, out double column1, out double row2, out double column2)

Description

draw_line_moddraw_line_moddraw_line_modDrawLineModDrawLineMod returns the parameter for a line, which has been created interactively by the user in the window.

To create a line are expected the coordinates of the start point Row1InRow1InRow1InRow1Inrow1In, Column1InColumn1InColumn1InColumn1Incolumn1In and of the end point Row2InRow2InRow2InRow2Inrow2In,Column2InColumn2InColumn2InColumn2Incolumn2In. If you click on one end point of the created line, you may move this point. After another mouse click in the middle of the created line you can move it.

Pressing the right mousebutton terminates the procedure.

After terminating the procedure the line is not visible in the window any longer.

Parallelization

Parameters

WindowHandleWindowHandleWindowHandleWindowHandlewindowHandle (input_control)  window HWindow, HTupleHTupleHWindowX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong)

Window identifier.

Row1InRow1InRow1InRow1Inrow1In (input_control)  line.begin.y HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Row index of the first point of the line.

Column1InColumn1InColumn1InColumn1Incolumn1In (input_control)  line.begin.x HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Column index of the first point of the line.

Row2InRow2InRow2InRow2Inrow2In (input_control)  line.end.y HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Row index of the second point of the line.

Column2InColumn2InColumn2InColumn2Incolumn2In (input_control)  line.end.x HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Column index of the second point of the line.

Row1Row1Row1Row1row1 (output_control)  line.begin.y HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Row index of the first point of the line.

Column1Column1Column1Column1column1 (output_control)  line.begin.x HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Column index of the first point of the line.

Row2Row2Row2Row2row2 (output_control)  line.end.y HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Row index of the second point of the line.

Column2Column2Column2Column2column2 (output_control)  line.end.x HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Column index of the second point of the line.

Example (HDevelop)

get_system('width',Width)
get_system('height',Height)
set_part(WindowHandle,0,0,Width-1,Height-1)
read_image(Image,'monkey')
disp_image(Image,WindowHandle)
draw_line_mod(WindowHandle,10,20,55,124,Row1,Column1,Row2,Column2)
set_part(WindowHandle,Row1,Column1,Row2,Column2)
disp_image(Image,WindowHandle)
fwrite_string(FileHandle,['Clipping = (',Row1,',',Column1,')'])
fwrite_string(FileHandle,[',(',Row2,',',Column2,')'])
fnew_line(FileHandle)

Example (C)

get_system("width",Width) ;
get_system("height",Height) ;
set_part(WindowHandle,0,0,Width-1,Height-1) ;
read_image(&Image,"monkey") ;
disp_image(Image,WindowHandle) ;
draw_line_mod(WindowHandle,10,20,55,124,&Row1,&Column1,&Row2,&Column2) ;
set_part(WindowHandle,Row1,Column1,Row2,Column2) ;
disp_image(Image,WindowHandle) ;
fwrite_string(FileHandle,"Clipping = (") ;
fwrite_string(FileHandle,Row1) ;
fwrite_string(FileHandle,",") ;
fwrite_string(FileHandle,Column1) ;
fwrite_string(FileHandle,"),(") ;
fwrite_string(FileHandle,Row2) ;
fwrite_string(FileHandle,",") ;
fwrite_string(FileHandle,Column2) ;
fwrite_string(FileHandle,")") ;
fnew_line(FileHandle) ;

Example (HDevelop)

get_system('width',Width)
get_system('height',Height)
set_part(WindowHandle,0,0,Width-1,Height-1)
read_image(Image,'monkey')
disp_image(Image,WindowHandle)
draw_line_mod(WindowHandle,10,20,55,124,Row1,Column1,Row2,Column2)
set_part(WindowHandle,Row1,Column1,Row2,Column2)
disp_image(Image,WindowHandle)
fwrite_string(FileHandle,['Clipping = (',Row1,',',Column1,')'])
fwrite_string(FileHandle,[',(',Row2,',',Column2,')'])
fnew_line(FileHandle)

Example (HDevelop)

get_system('width',Width)
get_system('height',Height)
set_part(WindowHandle,0,0,Width-1,Height-1)
read_image(Image,'monkey')
disp_image(Image,WindowHandle)
draw_line_mod(WindowHandle,10,20,55,124,Row1,Column1,Row2,Column2)
set_part(WindowHandle,Row1,Column1,Row2,Column2)
disp_image(Image,WindowHandle)
fwrite_string(FileHandle,['Clipping = (',Row1,',',Column1,')'])
fwrite_string(FileHandle,[',(',Row2,',',Column2,')'])
fnew_line(FileHandle)

Example (HDevelop)

get_system('width',Width)
get_system('height',Height)
set_part(WindowHandle,0,0,Width-1,Height-1)
read_image(Image,'monkey')
disp_image(Image,WindowHandle)
draw_line_mod(WindowHandle,10,20,55,124,Row1,Column1,Row2,Column2)
set_part(WindowHandle,Row1,Column1,Row2,Column2)
disp_image(Image,WindowHandle)
fwrite_string(FileHandle,['Clipping = (',Row1,',',Column1,')'])
fwrite_string(FileHandle,[',(',Row2,',',Column2,')'])
fnew_line(FileHandle)

Result

draw_line_moddraw_line_moddraw_line_modDrawLineModDrawLineMod returns 2 (H_MSG_TRUE), if the window is valid and the needed drawing mode is available. If necessary, an exception is raised.

Possible Predecessors

open_windowopen_windowopen_windowOpenWindowOpenWindow

Possible Successors

reduce_domainreduce_domainreduce_domainReduceDomainReduceDomain, disp_linedisp_linedisp_lineDispLineDispLine, set_coloredset_coloredset_coloredSetColoredSetColored, set_line_widthset_line_widthset_line_widthSetLineWidthSetLineWidth, set_drawset_drawset_drawSetDrawSetDraw, set_insertset_insertset_insertSetInsertSetInsert

Alternatives

draw_linedraw_linedraw_lineDrawLineDrawLine, draw_ellipsedraw_ellipsedraw_ellipseDrawEllipseDrawEllipse, draw_regiondraw_regiondraw_regionDrawRegionDrawRegion

See also

gen_circlegen_circlegen_circleGenCircleGenCircle, draw_rectangle1draw_rectangle1draw_rectangle1DrawRectangle1DrawRectangle1, draw_rectangle2draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2

Module

Foundation


Table of Contents / Graphics / Drawing ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH