Hello All,
I am trying to write a program which generates arc passes through 3 given points. To do that, I have written the code which finds the circle passes through 3 points, and calculated the angle of these points. I am making program plot between first and last points' angle values. However, linspace function creates a problem because it always takes the CCW. depending on middle point it can be CW. Is there any function or program which creates an arc given 3 points ? or is there any method like linspace which can wrap values around 2pi ?

Plus de réponses (1)

Bruno Luong
Bruno Luong le 21 Juil 2020
Modifié(e) : Bruno Luong le 22 Juil 2020
Assuming you have angle vector in radian. Change
anglevectorCCW = linspace(angle1, angle2)
to
anglevectorCW = linspace(min(angle1,angle2),max(angle1,angle2)-2*pi);
for plot the other part of the circle.

2 commentaires

points = [6 4;9 3;10 4];
it did not work for these points, unfortunately.
Bruno Luong
Bruno Luong le 22 Juil 2020
Modifié(e) : Bruno Luong le 22 Juil 2020
Show us your corresponding angle values, input arguments of LINSPACE and the command of plot the arc.
Don't care about the "points", which I have no clue why it's 3 x 1 array, doesn't make any sense since you seem to describe 3 points in the plane.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Interpolation dans Centre d'aide et File Exchange

Produits

Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by