create_drawing_object_xldT_create_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXldcreate_drawing_object_xld创建绘图对象扩展线描述(算子)

名称

create_drawing_object_xldT_create_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXldcreate_drawing_object_xld — 创建一个可以交互式修改的扩展线描述轮廓。

签名

create_drawing_object_xld( : : Row, Column : DrawID)

Herror T_create_drawing_object_xld(const Htuple Row, const Htuple Column, Htuple* DrawID)

void CreateDrawingObjectXld(const HTuple& Row, const HTuple& Column, HTuple* DrawID)

void HDrawingObject::CreateDrawingObjectXld(const HTuple& Row, const HTuple& Column)

static void HOperatorSet.CreateDrawingObjectXld(HTuple row, HTuple column, out HTuple drawID)

void HDrawingObject.CreateDrawingObjectXld(HTuple row, HTuple column)

def create_drawing_object_xld(row: Sequence[Union[float, int]], column: Sequence[Union[float, int]]) -> HHandle

描述

create_drawing_object_xldcreate_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXldCreateDrawingObjectXldcreate_drawing_object_xld 创建一个 XLD 轮廓,用户可在 HALCON 窗口中对其进行交互式修改。该轮廓由其各点的坐标 RowRowRowRowrowrowColumnColumnColumnColumncolumncolumn 定义。

这些参数可随时通过 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。附加后,用户可通过与窗口交互编辑轮廓。在窗口中左键单击可添加新点。单击两个连续点之间的轮廓线段时,将在该区间插入新点。拖动各轮廓点的控制柄可移动该点。将单个轮廓点拖至与其直接相邻的相邻轮廓点上即可删除该点。将终点拖至起点可闭合轮廓。拖动中心控制柄可整体移动轮廓。此外,可通过 set_drawing_object_xldset_drawing_object_xldSetDrawingObjectXldSetDrawingObjectXldSetDrawingObjectXldset_drawing_object_xld 将新轮廓赋予绘图对象。

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

执行信息

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

参数

RowRowRowRowrowrow (输入控制)  coordinates.y-array HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

多边形的行坐标。

默认值: [100,200,200,100]

建议值: 0, 10, 20, 50, 100, 200, 500

ColumnColumnColumnColumncolumncolumn (输入控制)  coordinates.x-array HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

多边形的列坐标。

默认值: [100,100,200,200]

建议值: 0, 10, 20, 50, 100, 200, 500

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

绘图对象的句柄。

结果

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

可能的前趋

open_windowopen_windowOpenWindowOpenWindowOpenWindowopen_window

可能的后继

attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindowattach_drawing_object_to_window, get_drawing_object_paramsget_drawing_object_paramsGetDrawingObjectParamsGetDrawingObjectParamsGetDrawingObjectParamsget_drawing_object_params, get_drawing_object_iconicget_drawing_object_iconicGetDrawingObjectIconicGetDrawingObjectIconicGetDrawingObjectIconicget_drawing_object_iconic, set_drawing_object_xldset_drawing_object_xldSetDrawingObjectXldSetDrawingObjectXldSetDrawingObjectXldset_drawing_object_xld

替代

draw_xlddraw_xldDrawXldDrawXldDrawXlddraw_xld, draw_xld_moddraw_xld_modDrawXldModDrawXldModDrawXldModdraw_xld_mod, draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region

另见

create_drawing_object_rectangle1create_drawing_object_rectangle1CreateDrawingObjectRectangle1CreateDrawingObjectRectangle1CreateDrawingObjectRectangle1create_drawing_object_rectangle1, create_drawing_object_rectangle2create_drawing_object_rectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2create_drawing_object_rectangle2, create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipseCreateDrawingObjectEllipsecreate_drawing_object_ellipse, create_drawing_object_circle_sectorcreate_drawing_object_circle_sectorCreateDrawingObjectCircleSectorCreateDrawingObjectCircleSectorCreateDrawingObjectCircleSectorcreate_drawing_object_circle_sector, create_drawing_object_ellipse_sectorcreate_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector, create_drawing_object_linecreate_drawing_object_lineCreateDrawingObjectLineCreateDrawingObjectLineCreateDrawingObjectLinecreate_drawing_object_line, create_drawing_object_circlecreate_drawing_object_circleCreateDrawingObjectCircleCreateDrawingObjectCircleCreateDrawingObjectCirclecreate_drawing_object_circle

模块

基础