create_drawing_object_ellipse_sectorT_create_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector (Operator)
Name
create_drawing_object_ellipse_sectorT_create_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector
— Create an elliptic sector which can be modified interactively.
Signature
void CreateDrawingObjectEllipseSector(const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Radius1, const HTuple& Radius2, const HTuple& StartAngle, const HTuple& EndAngle, HTuple* DrawID)
void HDrawingObject::CreateDrawingObjectEllipseSector(double Row, double Column, double Phi, double Radius1, double Radius2, double StartAngle, double EndAngle)
static void HOperatorSet.CreateDrawingObjectEllipseSector(HTuple row, HTuple column, HTuple phi, HTuple radius1, HTuple radius2, HTuple startAngle, HTuple endAngle, out HTuple drawID)
void HDrawingObject.CreateDrawingObjectEllipseSector(double row, double column, double phi, double radius1, double radius2, double startAngle, double endAngle)
Description
create_drawing_object_ellipse_sectorcreate_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector
creates an ellipse sector which can be
modified interactively in a HALCON window by the user. The ellipse sector
is defined by the coordinates RowRowRowRowrowrow
and ColumnColumnColumnColumncolumncolumn
of its center,
the lengths of its respective half axis, Radius1Radius1Radius1Radius1radius1radius_1
and
Radius2Radius2Radius2Radius2radius2radius_2
, the start and end angles of the arc, StartAngleStartAngleStartAngleStartAnglestartAnglestart_angle
and EndAngleEndAngleEndAngleEndAngleendAngleend_angle
, and its orientation PhiPhiPhiPhiphiphi
.
These parameters can be queried any time with get_drawing_object_paramsget_drawing_object_paramsGetDrawingObjectParamsGetDrawingObjectParamsGetDrawingObjectParamsget_drawing_object_params
,
as well as its corresponding HALCON object with get_drawing_object_iconicget_drawing_object_iconicGetDrawingObjectIconicGetDrawingObjectIconicGetDrawingObjectIconicget_drawing_object_iconic
.
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_paramsset_drawing_object_paramsSetDrawingObjectParamsSetDrawingObjectParamsSetDrawingObjectParamsset_drawing_object_params
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_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindowattach_drawing_object_to_window
for further details.
Once attached, the ellipse sector is editable by the user through interaction
with the window.
There are four possible transformations for an ellipse sector
object: resizing, displacement, rotation, and changing the arc angle.
The ellipse sector can be moved in the HALCON window by dragging the center.
The orientation and thus the rotation of the ellipse sector can also be modified by
dragging on a vertex handle of the first half axis. The size and angles
of the ellipse sector can be modified by dragging close to the vertex handles.
In contrast to the operator draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse
, this interaction does not
block the calling thread.
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
RowRowRowRowrowrow
(input_control) coordinates.y →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Row index of the center.
Default value: 200
ColumnColumnColumnColumncolumncolumn
(input_control) coordinates.x →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Column index of the center.
Default value: 200
PhiPhiPhiPhiphiphi
(input_control) angle.rad →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Orientation of the first half axis in radians.
Default value: 0
Radius1Radius1Radius1Radius1radius1radius_1
(input_control) number →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
First half axis.
Default value: 100
Radius2Radius2Radius2Radius2radius2radius_2
(input_control) number →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Second half axis.
Default value: 60
StartAngleStartAngleStartAngleStartAnglestartAnglestart_angle
(input_control) angle.rad →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Start angle of the arc.
Default value: 0
EndAngleEndAngleEndAngleEndAngleendAngleend_angle
(input_control) angle.rad →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
End angle of the arc.
Default value: 3.14159
DrawIDDrawIDDrawIDDrawIDdrawIDdraw_id
(output_control) drawing_object →
HDrawingObject, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle of the drawing object.
Result
If the parameter values are correct the operator
create_drawing_object_ellipse_sectorcreate_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector
returns the value 2 (H_MSG_TRUE).
Otherwise an exception is raised.
Possible Predecessors
open_windowopen_windowOpenWindowOpenWindowOpenWindowopen_window
Possible Successors
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
Alternatives
draw_ellipse_moddraw_ellipse_modDrawEllipseModDrawEllipseModDrawEllipseModdraw_ellipse_mod
,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse
,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region
,
create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipseCreateDrawingObjectEllipsecreate_drawing_object_ellipse
See also
gen_ellipse_contour_xldgen_ellipse_contour_xldGenEllipseContourXldGenEllipseContourXldGenEllipseContourXldgen_ellipse_contour_xld
,
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_xldcreate_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXldCreateDrawingObjectXldcreate_drawing_object_xld
,
create_drawing_object_linecreate_drawing_object_lineCreateDrawingObjectLineCreateDrawingObjectLineCreateDrawingObjectLinecreate_drawing_object_line
,
create_drawing_object_circlecreate_drawing_object_circleCreateDrawingObjectCircleCreateDrawingObjectCircleCreateDrawingObjectCirclecreate_drawing_object_circle
Module
Foundation