Plotting an Ellipse

25 vues (au cours des 30 derniers jours)
Oliver
Oliver le 15 Juin 2012
Commenté : Nshine le 16 Jan 2020
I'm trying to draw a 2D ellipse. I know that I can use the rectangle function and set the curvature equal to 1, but I came across this page http://www.mathworks.com/help/toolbox/mupad/plot/PRIMITIV_Ellipse2d.html, and I was wondering how I would implement it. It looks like it could be very useful, but whenever I try it says it cannot recognize the char inputs.
  1 commentaire
Walter Roberson
Walter Roberson le 15 Juin 2012
Could you show us a sample of how you are invoking that routine?

Connectez-vous pour commenter.

Réponses (1)

David Legland
David Legland le 4 Juil 2012
Modifié(e) : David Legland le 4 Juil 2012
Hi,
Maybe the best way to draw an ellipse is to use its parametric form:
% compute points corresponding to axis-oriented ellipse
t = linspace(0, 2*pi, 200);
xt = r1 * cos(t) + xc;
yt = r2 * sin(t) + yc;
% aply rotation by angle theta
cot = cos(theta); sit = sin(theta);
x = xt * cot - yt * sit;
y = xt * sit - yt * cot;
% draw the curbe
plot(x, y, '-');
This can be easily converted to a single function.
  1 commentaire
Nshine
Nshine le 16 Jan 2020
Minor typo in the rotation:
replace
y = xt * sit - yt * cot;
with
y = xt * sit + yt * cot;

Connectez-vous pour commenter.

Catégories

En savoir plus sur Unit Conversions dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by