Herror ::draw_line (
    const HTuple &WindowHandle,
    double *Row1,
    double *Column1,
    double *Row2,
    double *Column2
)
HTuple HWindow::DrawLine (
    HTuple *Column1,
    HTuple *Row2,
    HTuple *Column2
) const

Draw a line.

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

To create a line you have to press the left mouse button determining a start point of the line. While keeping the button pressed you may ``drag'' the line in any direction. After another mouse click in the middle of the created line you can move it. If you click on one end point of the created line, you may move this point. Pressing the right mousebutton terminates the procedure.

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


Parameters

WindowHandle (input_control)
window -> HTuple.long
Window_id.

Row1 (output_control)
line.begin.y -> double *
Row index of the first point of the line.

Column1 (output_control)
line.begin.x -> double *
Column index of the first point of the line.

Row2 (output_control)
line.end.y -> double *
Row index of the second point of the line.

Column2 (output_control)
line.end.x -> double *
Column index of the second point of the line.


Example
get_system("width",Width) ;
get_system("height",Height) ;
set_part(WindowHandle,0,0,Width-1,Height-1) ;
read_image(&Image,"affe") ;
disp_image(Image,WindowHandle) ;
draw_line(WindowHandle,&Row1,&Column1,&Row2,&Column2) ;
set_part(WindowHandle,Row1,Column1,Row2,Column2) ;
disp_image(Image,WindowHandle) ;
fwrite_string("Clipping = (") ;
fwrite_string(Row1) ;
fwrite_string(",") ;
fwrite_string(Column1) ;
fwrite_string("),(") ;
fwrite_string(Row2) ;
fwrite_string(",") ;
fwrite_string(Column2) ;
fwrite_string(")") ;  
fnew_line(:::) ;

Result

::draw_line returns H_MSG_TRUE, if the window is valid and the needed drawing mode (see ::set_insert) is available. If necessary, an exception handling is raised.


Possible Predecessors

::open_window


Possible Successors

::reduce_domain, ::disp_line, ::set_colored, ::set_line_width, ::set_draw, ::set_insert


See also

::draw_line_mod, ::gen_rectangle1, ::draw_circle, ::draw_ellipse, ::set_insert


Module

System



Copyright © 1996-2002 MVTec Software GmbH