gen_ellipse
— Create an ellipse.
The operator gen_ellipse
generates one or more ellipses with the
center
(Row
, Column
), the orientation Phi
and the half-radii Radius1
and Radius2
.
The angle is indicated in arc measure according to the x axis
in mathematically positive direction.
More than one region can be created by
passing tuples of parameter values.
The center must be located within the image coordinates.
The coordinate system runs from (0,0) (upper left corner) to
(Width-1,Height-1). See get_system
and reset_obj_db
in this context.
If the ellipse reaches beyond the edge of the image it is clipped
to the current image format according to the value of
the system flag 'clip_region' (set_system
).
Ellipse
(output_object) region(-array) →
object
Created ellipse(s).
Row
(input_control) ellipse.center.y(-array) →
(real / integer)
Line index of center.
Default value: 200.0
Suggested values: 0.0, 10.0, 20.0, 50.0, 100.0, 256.0, 300.0, 400.0
Typical range of values: 1.0
≤
Row
≤
1024.0
(lin)
Minimum increment: 1.0
Recommended increment: 10.0
Column
(input_control) ellipse.center.x(-array) →
(real / integer)
Column index of center.
Default value: 200.0
Suggested values: 0.0, 10.0, 20.0, 50.0, 100.0, 256.0, 300.0, 400.0
Typical range of values: 1.0
≤
Column
≤
1024.0
(lin)
Minimum increment: 1.0
Recommended increment: 10.0
Phi
(input_control) ellipse.angle.rad(-array) →
(real / integer)
Orientation of the longer radius (Radius1).
Default value: 0.0
Suggested values: -1.178097, -0.785398, -0.392699, 0.0, 0.392699, 0.785398, 1.178097
Typical range of values: -1.178097
≤
Phi
≤
1.178097
(lin)
Radius1
(input_control) ellipse.radius1(-array) →
(real / integer)
Longer radius.
Default value: 100.0
Suggested values: 2.0, 5.0, 10.0, 20.0, 50.0, 100.0, 256.0, 300.0, 400.0
Typical range of values: 1.0
≤
Radius1
≤
1024.0
(lin)
Minimum increment: 1.0
Recommended increment: 10.0
Restriction: Radius1 > 0
Radius2
(input_control) ellipse.radius2(-array) →
(real / integer)
Shorter radius.
Default value: 60.0
Suggested values: 1.0, 2.0, 4.0, 5.0, 10.0, 20.0, 50.0, 100.0, 256.0, 300.0, 400.0
Typical range of values: 1.0
≤
Radius2
≤
1024.0
(lin)
Minimum increment: 1.0
Recommended increment: 10.0
Restriction: Radius2 > 0 && Radius2 <= Radius1
read_image (Image, 'fabrik') gen_ellipse (Ellipse, 200, 200, rad(10), 160, 90) reduce_domain (Image, Ellipse, ImageReduced) dev_clear_window () dev_display (ImageReduced)
Runtime complexity: O(Radius1
* 2)
Storage complexity (byte): O(Radius1
* 8)
If the parameter values are correct, the operator gen_ellipse
returns the value 2 (H_MSG_TRUE). Otherwise an exception is raised.
The clipping according to the current image format is set via the
operator set_system('clip_region',<'true'/'false'>)
.
gen_circle
,
gen_region_polygon_filled
,
draw_ellipse
disp_ellipse
,
set_shape
,
smallest_circle
,
reduce_domain
Foundation