@the cyclist maybe you can also take a look ;)
Finding 8 points on an ellipse
15 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Tom
am 20 Sep. 2021
Kommentiert: Image Analyst
am 20 Sep. 2021
Dear experts,
I have created a 95% confidence ellipse using the following code around a dataset:
allX = score(:,1);
allY = score(:,2);
p = 95;
CIx = prctile(allX, [(100-p)/2, p+(100-p)/2]);
CIy = prctile(allY, [(100-p)/2, p+(100-p)/2]);
CIrng(1) = CIx(2)-CIx(1);
CIrng(2) = CIy(2)-CIy(1);
llc = [CIx(1),CIy(1)];
rectangle('Position',[llc,CIrng],'Curvature',[1,1], 'EdgeColor',"red");
Now I need to find 8 specific points on the ellipse. Points W - Z have to be the lowest, highest, most right and most left of the ellipse (as you can see here (those are normally not the problem, i think you don´t have to help me with these four points):
The points A-D are more of a problem for me. How can I find these? They are somehow the corners of the rectangle so the corners of the ellipse, but how do I find the coordinates of those?
Thanks in advance.
4 Kommentare
Akzeptierte Antwort
Walter Roberson
am 20 Sep. 2021
When the ellipse is parameterized as then the area for the angle from 0 to θ is
And the total area of an ellipse of this form is . We want a sector that is half of the upper quadrant. The upper quadrant by itself would have an area of . So we want . Factoring out the and a 1/2 from both sides then we have and so . So and then . But tan pi/4 is 1, so
Checking with (say) a = 5, b = 2, then . Compute 1/2 * a * b * atan(5/2*tan(atan(2/5))) = 1/2 * 5 * 2 * atan(5/2 * 2/5) = 5 * atan(1) = 5 * pi/4 . And on the left side, 1/2 * pi/4 * 5 * 2 = 5 * pi/4 .
So the formula for theta turns out to be very simple: atan2(b,a)
Now you just have to transform CIrng into a, b parameters.
0 Kommentare
Weitere Antworten (1)
KSSV
am 20 Sep. 2021
Find the major, minor axes of ellipse i.e. (a,b). Once these are known, the paraetric equation of ellipse are:
Take phi = 0:pi/4:2*pi ;
You have the points you want.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!