create_drawing_object_rectangle2T_create_drawing_object_rectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2create_drawing_object_rectangle2创建绘图对象矩形2(算子)

名称

create_drawing_object_rectangle2T_create_drawing_object_rectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2create_drawing_object_rectangle2 — 创建一个可以交互修改的任意方向的矩形。

签名

create_drawing_object_rectangle2( : : Row, Column, Phi, Length1, Length2 : DrawID)

Herror T_create_drawing_object_rectangle2(const Htuple Row, const Htuple Column, const Htuple Phi, const Htuple Length1, const Htuple Length2, Htuple* DrawID)

void CreateDrawingObjectRectangle2(const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Length1, const HTuple& Length2, HTuple* DrawID)

void HDrawingObject::HDrawingObject(double Row, double Column, double Phi, double Length1, double Length2)

void HDrawingObject::CreateDrawingObjectRectangle2(double Row, double Column, double Phi, double Length1, double Length2)

static void HOperatorSet.CreateDrawingObjectRectangle2(HTuple row, HTuple column, HTuple phi, HTuple length1, HTuple length2, out HTuple drawID)

public HDrawingObject(double row, double column, double phi, double length1, double length2)

void HDrawingObject.CreateDrawingObjectRectangle2(double row, double column, double phi, double length1, double length2)

def create_drawing_object_rectangle2(row: float, column: float, phi: float, length_1: float, length_2: float) -> HHandle

描述

create_drawing_object_rectangle2create_drawing_object_rectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2create_drawing_object_rectangle2 创建一个定向矩形(旋转矩形),用户可在 HALCON 窗口中对其进行交互式修改。该矩形由其中心坐标 RowRowRowRowrowrowColumnColumnColumnColumncolumncolumn、方向角 PhiPhiPhiPhiphiphi 以及两半轴长度 Length1Length1Length1Length1length1length_1Length2Length2Length2Length2length2length_2 定义。创建的矩形通过句柄 DrawIDDrawIDDrawIDDrawIDdrawIDdraw_id 返回。

这些参数可随时通过 get_drawing_object_paramsget_drawing_object_paramsGetDrawingObjectParamsGetDrawingObjectParamsGetDrawingObjectParamsget_drawing_object_params 进行查询,其对应的 HALCON 对象也可通过 get_drawing_object_iconicget_drawing_object_iconicGetDrawingObjectIconicGetDrawingObjectIconicGetDrawingObjectIconicget_drawing_object_iconic 获取。

除上述参数外,每个绘图对象还包含若干决定其在 HALCON 窗口中外观的参数。具体参数数量及含义详见 set_drawing_object_paramsset_drawing_object_paramsSetDrawingObjectParamsSetDrawingObjectParamsSetDrawingObjectParamsset_drawing_object_params 说明。

为启用绘图对象的交互式修改功能,该对象必须附加到现有窗口。有关详细信息,请参阅 attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindowattach_drawing_object_to_window。附加后,用户可通过与窗口交互来编辑矩形。矩形 2 对象支持三种变换操作:尺寸调整、位移和旋转。拖动中心点可移动矩形,拖动边框控制柄可调整尺寸,仅当拖动与第一半轴垂直的边框时才能改变矩形方向。

draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2DrawRectangle2draw_rectangle2 算子不同,此交互过程不会阻塞调用线程。

执行信息

此算子返回一个句柄。请注意,即使该句柄被用作特定算子的输入参数,这些算子仍可能改变此句柄类型的实例状态。

参数

RowRowRowRowrowrow (输入控制)  rectangle2.center.y HTuplefloatHTupleHtuple (real) (double) (double) (double)

中心的行坐标。

默认值: 150

ColumnColumnColumnColumncolumncolumn (输入控制)  rectangle2.center.x HTuplefloatHTupleHtuple (real) (double) (double) (double)

中心的列坐标。

默认值: 150

PhiPhiPhiPhiphiphi (输入控制)  rectangle2.angle.rad HTuplefloatHTupleHtuple (real) (double) (double) (double)

第一半轴的方向(单位:弧度)。

默认值: 0

Length1Length1Length1Length1length1length_1 (输入控制)  rectangle2.hwidth HTuplefloatHTupleHtuple (real) (double) (double) (double)

第一半轴。

默认值: 100

Length2Length2Length2Length2length2length_2 (输入控制)  rectangle2.hheight HTuplefloatHTupleHtuple (real) (double) (double) (double)

第二半轴。

默认值: 100

DrawIDDrawIDDrawIDDrawIDdrawIDdraw_id (输出控制)  drawing_object HDrawingObject, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

绘图对象的句柄。

结果

如果参数值正确,算子 create_drawing_object_rectangle2create_drawing_object_rectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2create_drawing_object_rectangle2 返回值 2 (H_MSG_TRUE)。否则将抛出异常。

可能的前趋

open_windowopen_windowOpenWindowOpenWindowOpenWindowopen_window

可能的后继

disp_regiondisp_regionDispRegionDispRegionDispRegiondisp_region, set_coloredset_coloredSetColoredSetColoredSetColoredset_colored, set_line_widthset_line_widthSetLineWidthSetLineWidthSetLineWidthset_line_width, set_drawset_drawSetDrawSetDrawSetDrawset_draw, set_insertset_insertSetInsertSetInsertSetInsertset_insert, attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindowattach_drawing_object_to_window

替代

draw_rectangle2_moddraw_rectangle2_modDrawRectangle2ModDrawRectangle2ModDrawRectangle2Moddraw_rectangle2_mod, draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2DrawRectangle2draw_rectangle2, draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region

另见

gen_rectangle2gen_rectangle2GenRectangle2GenRectangle2GenRectangle2gen_rectangle2, draw_circledraw_circleDrawCircleDrawCircleDrawCircledraw_circle, draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse, set_insertset_insertSetInsertSetInsertSetInsertset_insert

模块

基础