How to draw circle with imellipse?

3 views (last 30 days)
Steven
Steven on 18 Jan 2014
Edited: Image Analyst on 18 Feb 2019
Hi
I want to draw a circle with imellipse. I used something like:
AA = imellipse(gca,[xmin ymin radius radius]);
but I can only specify the xmin and ymin of the circle, while I want to specify the center.
How can I do so?
Thanks!
Steven

Accepted Answer

Image Analyst
Image Analyst on 18 Jan 2014
  2 Comments
Image Analyst
Image Analyst on 18 Jan 2014
Edited: Image Analyst on 18 Jan 2014
If you really want to do it with imellipse, you can just compute the xmin and ymin from the diameter. By the way, imellipse takes width and height (diameter) not radius.
diameter = 10;
radius = diameter / 2;
xCenter = 60;
yCenter = 30;
xMin= xCenter - radius;
yMin = yCenter - radius;
hEllipse = imellipse(gca,[xMin, yMin, diameter, diameter]);
% Plot center
hold on;
plot(xCenter, yCenter, 'r+', 'LineWidth', 5, 'MarkerSize', 20);
grid on;
Steven
Steven on 18 Jan 2014
Edited: Steven on 26 Apr 2016
Thanks

Sign in to comment.

More Answers (1)

Tim Jackman
Tim Jackman on 25 Sep 2018
In R2018b you can create a circular ROI with the drawcircle function.
  3 Comments
Matt J
Matt J on 18 Feb 2019
Edited: Matt J on 18 Feb 2019
Unfortunately, drawcircle doesn't seem to come with a wait method letting you finalize the position of the circle, nor either features of the imroi classes like positionConstraintFcns.
Image Analyst
Image Analyst on 18 Feb 2019
Edited: Image Analyst on 18 Feb 2019
It does have a 'DrawingArea' option to restrict the drawing area to what you specify.
Have you tried waitfor()?

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!