I'm trying to create an ellipse in parametric form. I have just two Foci along the major axis. So, how shall I get r1, r2 etc.
point1 = 10 8
point2 = 25 20
The syntax is
t = linspace(0, 2*pi, 200);
xt = r1 * cos(t) + xc;
yt = r2 * sin(t) + yc;
cot = cos(theta); sit = sin(theta);
x = xt * cot - yt * sit;
y = xt * sit - yt * cot;
plot(x, y, '-');

1 Kommentar

Ramesh Bala
Ramesh Bala am 26 Jul. 2018
Bearbeitet: Matt J am 26 Jul. 2018
% or in other general forms :
% data
t = linspace(0,2*pi,80); % the domain of the parameter t.
x = @(t)r1.*cos(t);
y = @(t)r2.*sin(t);
figure(1)
ELLIPSE = plot(x(t),y(t));
hold off

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Matt J
Matt J am 26 Jul. 2018
Bearbeitet: Matt J am 26 Jul. 2018

1 Stimme

You cannot determine the ellipse with only the foci. You also need to know r1. Once you know that however, you can determine r2 readily,
xc_yc=(point1+point2)/2;
c=norm(point1-xc_yc);
r2 = r1^2-c^2;

6 Kommentare

Ramesh Bala
Ramesh Bala am 27 Jul. 2018
Danke ! how to get that r1. I think r1 = 2a ? major axis length so how to get a from foci (xy ) coords??
Matt J
Matt J am 27 Jul. 2018
Bearbeitet: Matt J am 27 Jul. 2018
The major axis length needs to be given. You cannot derive it from the foci. Two different ellipses with different major axis lengths can have the same foci.
Ramesh Bala
Ramesh Bala am 30 Jul. 2018
Alright ! Lemme have a check
Thanks for the answer.
Ramesh Bala
Ramesh Bala am 6 Sep. 2018
I couldn't get the proper work out for this. Could you share any code regarding this case
Matt J
Matt J am 6 Sep. 2018
I already told you that it was impossible. The foci alone aren't enough.
Ramesh Bala
Ramesh Bala am 7 Sep. 2018
yeah I know that ,I thought to take the surrounding rectangle boundary as tangent and then to draw an ellipse ?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte

Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by