draw_rectangle1_modT_draw_rectangle1_modDrawRectangle1ModDrawRectangle1Moddraw_rectangle1_mod (算子)
名称
draw_rectangle1_modT_draw_rectangle1_modDrawRectangle1ModDrawRectangle1Moddraw_rectangle1_mod — 画一个平行于坐标轴的矩形。
签名
void DrawRectangle1Mod(const HTuple& WindowHandle, const HTuple& Row1In, const HTuple& Column1In, const HTuple& Row2In, const HTuple& Column2In, HTuple* Row1, HTuple* Column1, HTuple* Row2, HTuple* Column2)
void HWindow::DrawRectangle1Mod(double Row1In, double Column1In, double Row2In, double Column2In, double* Row1, double* Column1, double* Row2, double* Column2) const
static void HOperatorSet.DrawRectangle1Mod(HTuple windowHandle, HTuple row1In, HTuple column1In, HTuple row2In, HTuple column2In, out HTuple row1, out HTuple column1, out HTuple row2, out HTuple column2)
void HWindow.DrawRectangle1Mod(double row1In, double column1In, double row2In, double column2In, out double row1, out double column1, out double row2, out double column2)
描述
draw_rectangle1_moddraw_rectangle1_modDrawRectangle1ModDrawRectangle1ModDrawRectangle1Moddraw_rectangle1_mod returns the parameter for a rectangle parallel
to the coordinate axes, which has been created interactively by the user
in the window.
To create a rectangle are expected the parameters Row1InRow1InRow1InRow1Inrow1Inrow_1in,
Column1InColumn1InColumn1InColumn1Incolumn1Incolumn_1in,Row2InRow2InRow2InRow2Inrow2Inrow_2in and Column2InColumn2InColumn2InColumn2Incolumn2Incolumn_2in.
After a mouse click in the middle of the created rectangle you can move it.
A click close to one side “grips” it to modify the rectangle's dimension in perpendicular
direction to this side. If you click on one corner of the created rectangle, you may
move this corner.
Pressing the right mouse button terminates the procedure.
After terminating the procedure the rectangle is not visible in the window any longer.
注意
If used in a buffer window, mouse events have to be supplied by the
application, while the draw operator must be run in another thread.
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 未采用并行化处理。
参数
WindowHandleWindowHandleWindowHandleWindowHandlewindowHandlewindow_handle (输入控制) window → HWindow, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
窗口句柄。
Row1InRow1InRow1InRow1Inrow1Inrow_1in (输入控制) rectangle.origin.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Row index of the left upper corner.
Column1InColumn1InColumn1InColumn1Incolumn1Incolumn_1in (输入控制) rectangle.origin.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Column index of the left upper corner.
Row2InRow2InRow2InRow2Inrow2Inrow_2in (输入控制) rectangle.corner.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Row index of the right lower corner.
Column2InColumn2InColumn2InColumn2Incolumn2Incolumn_2in (输入控制) rectangle.corner.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Column index of the right lower corner.
Row1Row1Row1Row1row1row_1 (输出控制) rectangle.origin.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Row index of the left upper corner.
Column1Column1Column1Column1column1column_1 (输出控制) rectangle.origin.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Column index of the left upper corner.
Row2Row2Row2Row2row2row_2 (输出控制) rectangle.corner.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Row index of the right lower corner.
Column2Column2Column2Column2column2column_2 (输出控制) rectangle.corner.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Column index of the right lower corner.
示例(HDevelop)
read_image(Image,'monkey')
get_image_size (Image, Width, Height)
dev_display (Image)
draw_rectangle1_mod(WindowHandle,100,100,200,300,\
Row1,Column1,Row2,Column2)
dev_set_part (Row1, Column1, Row2, Column2)
dev_display (Image)
示例(C)
read_image(&Image,"monkey");
get_image_size(Image,&Width,&Height);
disp_image(Image,WindowHandle);
draw_rectangle1_mod(WindowHandle,100,100,200,300,
&Row1,&Column1,&Row2,&Column2);
set_part(WindowHandle,Row1,Column1,Row2,Column2);
disp_image(Image,WindowHandle);
示例(HDevelop)
read_image(Image,'monkey')
get_image_size (Image, Width, Height)
dev_display (Image)
draw_rectangle1_mod(WindowHandle,100,100,200,300,\
Row1,Column1,Row2,Column2)
dev_set_part (Row1, Column1, Row2, Column2)
dev_display (Image)
示例(HDevelop)
read_image(Image,'monkey')
get_image_size (Image, Width, Height)
dev_display (Image)
draw_rectangle1_mod(WindowHandle,100,100,200,300,\
Row1,Column1,Row2,Column2)
dev_set_part (Row1, Column1, Row2, Column2)
dev_display (Image)
示例(HDevelop)
read_image(Image,'monkey')
get_image_size (Image, Width, Height)
dev_display (Image)
draw_rectangle1_mod(WindowHandle,100,100,200,300,\
Row1,Column1,Row2,Column2)
dev_set_part (Row1, Column1, Row2, Column2)
dev_display (Image)
结果
draw_rectangle1_moddraw_rectangle1_modDrawRectangle1ModDrawRectangle1ModDrawRectangle1Moddraw_rectangle1_mod returns 2 (
H_MSG_TRUE)
, if the window is valid and the
needed drawing mode (see set_insertset_insertSetInsertSetInsertSetInsertset_insert) is available。如有必要,则抛出异常。
可能的前趋
open_windowopen_windowOpenWindowOpenWindowOpenWindowopen_window
可能的后继
reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain,
disp_regiondisp_regionDispRegionDispRegionDispRegiondisp_region,
set_coloredset_coloredSetColoredSetColoredSetColoredset_colored,
set_line_widthset_line_widthSetLineWidthSetLineWidthSetLineWidthset_line_width,
set_drawset_drawSetDrawSetDrawSetDrawset_draw,
set_insertset_insertSetInsertSetInsertSetInsertset_insert
替代
draw_rectangle1draw_rectangle1DrawRectangle1DrawRectangle1DrawRectangle1draw_rectangle1,
draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2DrawRectangle2draw_rectangle2,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region
另见
gen_rectangle1gen_rectangle1GenRectangle1GenRectangle1GenRectangle1gen_rectangle1,
draw_circledraw_circleDrawCircleDrawCircleDrawCircledraw_circle,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse,
set_insertset_insertSetInsertSetInsertSetInsertset_insert
模块
基础