Skip to content

create_drawing_object_circle_sectorCreateDrawingObjectCircleSectorCreateDrawingObjectCircleSectorcreate_drawing_object_circle_sectorT_create_drawing_object_circle_sector🔗

Short description🔗

create_drawing_object_circle_sectorCreateDrawingObjectCircleSectorCreateDrawingObjectCircleSectorcreate_drawing_object_circle_sectorT_create_drawing_object_circle_sector — Create a circle sector which can be modified interactively.

Signature🔗

create_drawing_object_circle_sector( coordinates.y Row, coordinates.x Column, number Radius, angle.rad StartAngle, angle.rad EndAngle, out drawing_object DrawID )void CreateDrawingObjectCircleSector( const HTuple& Row, const HTuple& Column, const HTuple& Radius, const HTuple& StartAngle, const HTuple& EndAngle, HTuple* DrawID )static void HOperatorSet.CreateDrawingObjectCircleSector( HTuple row, HTuple column, HTuple radius, HTuple startAngle, HTuple endAngle, out HTuple drawID )def create_drawing_object_circle_sector( row: float, column: float, radius: float, start_angle: float, end_angle: float ) -> HHandle

Herror T_create_drawing_object_circle_sector( const Htuple Row, const Htuple Column, const Htuple Radius, const Htuple StartAngle, const Htuple EndAngle, Htuple* DrawID )

void HDrawingObject::CreateDrawingObjectCircleSector( double Row, double Column, double Radius, double StartAngle, double EndAngle )

void HDrawingObject.CreateDrawingObjectCircleSector( double row, double column, double radius, double startAngle, double endAngle )

Description🔗

create_drawing_object_circle_sectorCreateDrawingObjectCircleSector creates a circle sector region which can be modified interactively in a HALCON window by the user. The circle sector is defined by the coordinates Rowrowrow and Columncolumncolumn of the center point, the Radiusradiusradius, and the start and end angle StartAnglestartAnglestart_angle and EndAngleendAngleend_angle.

These parameters can be queried any time with get_drawing_object_paramsGetDrawingObjectParams, as well as its corresponding HALCON object with get_drawing_object_iconicGetDrawingObjectIconic.

In addition to those parameters, every drawing object has a number of parameters which determine the appearance of the object in the HALCON window. See set_drawing_object_paramsSetDrawingObjectParams for details on the number and meaning of those parameters.

In order to enable the interactive modification with the drawing object, the object must be attached to an existing window. See attach_drawing_object_to_windowAttachDrawingObjectToWindow for further details. Once attached, the circle is editable by the user through interaction with the window. There are three possible transformations for a circle sector object: resizing, displacement and changing the arc angle. The Radiusradiusradius of the circle can be modified by dragging the circular arc. By clicking on the center, the circle sector can be moved across the HALCON window. The angle arc can be modified by dragging the handles of the circle sector.

In contrast to the operator draw_circleDrawCircle, this interaction does not block the calling thread.

Execution information🔗

Execution information
  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).

  • Multithreading scope: global (may be called from any thread).

  • Processed without parallelization.

This operator returns a handle. Note that the state of an instance of this handle type may be changed by specific operators even though the handle is used as an input parameter by those operators.

Parameters🔗

Rowrowrow (input_control) coordinates.y → (real)HTuple (double)HTuple (double)floatHtuple (double)

Row coordinate of the center.

Default: 100100

Columncolumncolumn (input_control) coordinates.x → (real)HTuple (double)HTuple (double)floatHtuple (double)

Column coordinate of the center.

Default: 100100

Radiusradiusradius (input_control) number → (real)HTuple (double)HTuple (double)floatHtuple (double)

Radius of the circle.

Default: 8080

StartAnglestartAnglestart_angle (input_control) angle.rad → (real)HTuple (double)HTuple (double)floatHtuple (double)

Start angle of the arc.

Default: 00

EndAngleendAngleend_angle (input_control) angle.rad → (real)HTuple (double)HTuple (double)floatHtuple (double)

End angle of the arc.

Default: 3.141593.14159

DrawIDdrawIDdraw_id (output_control) drawing_object → (handle)HTuple (HHandle)HDrawingObject, HTuple (IntPtr)HHandleHtuple (handle)

Handle of the drawing object.

Result🔗

If the parameter values are correct the operator create_drawing_object_circle_sectorCreateDrawingObjectCircleSector returns the value 2 (H_MSG_TRUE). Otherwise an exception is raised.

Combinations with other operators🔗

Combinations

Possible predecessors

open_windowOpenWindow

Possible successors

attach_drawing_object_to_windowAttachDrawingObjectToWindow, get_drawing_object_paramsGetDrawingObjectParams, get_drawing_object_iconicGetDrawingObjectIconic

Alternatives

draw_rectangle1_modDrawRectangle1Mod, draw_rectangle2DrawRectangle2, draw_regionDrawRegion, create_drawing_object_circleCreateDrawingObjectCircle, create_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSector

See also

create_drawing_object_rectangle1CreateDrawingObjectRectangle1, create_drawing_object_rectangle2CreateDrawingObjectRectangle2, create_drawing_object_ellipseCreateDrawingObjectEllipse, create_drawing_object_circleCreateDrawingObjectCircle, create_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSector, create_drawing_object_xldCreateDrawingObjectXld, create_drawing_object_lineCreateDrawingObjectLine

Module🔗

Foundation