create_drawing_object_circleT_create_drawing_object_circleCreateDrawingObjectCircleCreateDrawingObjectCirclecreate_drawing_object_circle创建绘图对象圆(算子)
名称
create_drawing_object_circleT_create_drawing_object_circleCreateDrawingObjectCircleCreateDrawingObjectCirclecreate_drawing_object_circle — 创建一个可以交互式修改的圆。
签名
Herror T_create_drawing_object_circle(const Htuple Row, const Htuple Column, const Htuple Radius, Htuple* DrawID)
def create_drawing_object_circle(row: float, column: float, radius: float) -> HHandle
描述
create_drawing_object_circlecreate_drawing_object_circleCreateDrawingObjectCircleCreateDrawingObjectCircleCreateDrawingObjectCirclecreate_drawing_object_circle 创建一个圆形区域,用户可在 HALCON 窗口中对其进行交互式修改。该圆由其中心点的坐标 RowRowRowRowrowrow 和 ColumnColumnColumnColumncolumncolumn 以及半径 RadiusRadiusRadiusRadiusradiusradius 定义。创建的圆通过句柄 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。附加后,用户可在窗口内通过交互操作编辑圆。圆形对象支持两种变换操作:调整大小与位移。点击圆弧附近区域可修改圆半径 RadiusRadiusRadiusRadiusradiusradius。点击圆心则可拖动圆形在HALCON窗口内移动。
与 draw_circledraw_circleDrawCircleDrawCircleDrawCircledraw_circle 算子不同,此交互操作不会阻塞调用线程。
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 未采用并行化处理。
此算子返回一个句柄。请注意,即使该句柄被用作特定算子的输入参数,这些算子仍可能改变此句柄类型的实例状态。
参数
RowRowRowRowrowrow (输入控制) circle.center.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
中心的行坐标。
默认值:
100
ColumnColumnColumnColumncolumncolumn (输入控制) circle.center.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
中心的列坐标。
默认值:
100
RadiusRadiusRadiusRadiusradiusradius (输入控制) circle.radius → HTuplefloatHTupleHtuple (real) (double) (double) (double)
圆的半径。
默认值:
80
DrawIDDrawIDDrawIDDrawIDdrawIDdraw_id (输出控制) drawing_object → HDrawingObject, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
绘图对象的句柄。
结果
如果参数值正确,算子 create_drawing_object_circlecreate_drawing_object_circleCreateDrawingObjectCircleCreateDrawingObjectCircleCreateDrawingObjectCirclecreate_drawing_object_circle 返回值 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
替代
draw_circledraw_circleDrawCircleDrawCircleDrawCircledraw_circle,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region,
create_drawing_object_circle_sectorcreate_drawing_object_circle_sectorCreateDrawingObjectCircleSectorCreateDrawingObjectCircleSectorCreateDrawingObjectCircleSectorcreate_drawing_object_circle_sector,
create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipseCreateDrawingObjectEllipsecreate_drawing_object_ellipse,
create_drawing_object_ellipse_sectorcreate_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector
另见
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_xldcreate_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXldCreateDrawingObjectXldcreate_drawing_object_xld
模块
基础