How to draw circle with imellipse?

4 次查看(过去 30 天)
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

采纳的回答

Image Analyst
Image Analyst 2014-1-18
  2 个评论
Image Analyst
Image Analyst 2014-1-18
编辑:Image Analyst 2014-1-18
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;

请先登录,再进行评论。

更多回答(1 个)

Tim Jackman
Tim Jackman 2018-9-25
In R2018b you can create a circular ROI with the drawcircle function.
  3 个评论
Matt J
Matt J 2019-2-18
编辑:Matt J 2019-2-18
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 2019-2-18
编辑:Image Analyst 2019-2-18
It does have a 'DrawingArea' option to restrict the drawing area to what you specify.
Have you tried waitfor()?

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by