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 件のコメント

Ramesh Bala
Ramesh Bala 2018 年 7 月 26 日
編集済み: Matt J 2018 年 7 月 26 日
% 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

サインインしてコメントする。

 採用された回答

Matt J
Matt J 2018 年 7 月 26 日
編集済み: Matt J 2018 年 7 月 26 日

1 投票

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 件のコメント

Ramesh Bala
Ramesh Bala 2018 年 7 月 27 日
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 2018 年 7 月 27 日
編集済み: Matt J 2018 年 7 月 27 日
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 2018 年 7 月 30 日
Alright ! Lemme have a check
Thanks for the answer.
Ramesh Bala
Ramesh Bala 2018 年 9 月 6 日
I couldn't get the proper work out for this. Could you share any code regarding this case
Matt J
Matt J 2018 年 9 月 6 日
I already told you that it was impossible. The foci alone aren't enough.
Ramesh Bala
Ramesh Bala 2018 年 9 月 7 日
yeah I know that ,I thought to take the surrounding rectangle boundary as tangent and then to draw an ellipse ?

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeLoops and Conditional Statements についてさらに検索

製品

リリース

R2018a

質問済み:

2018 年 7 月 26 日

コメント済み:

2018 年 9 月 7 日

Community Treasure Hunt

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

Start Hunting!

Translated by