MATLAB Answers

how to resample points with preset angle

3 views (last 30 days)
BeeTiaw
BeeTiaw on 27 Jun 2018
Answered: Ameer Hamza on 27 Jun 2018
Hi expert,
I am not sure if the title of this post represents the question I am going to ask very well.
I have the coordinate of a rounded triangle as shown in the plot
The coordinate of the plot is listed below. My question is how to resample this curve suppose I want to have them every theta = 2*pi/37 or every 10 degree spacing.
the x and y coordinate of the triangle is:
0.7900 0
0.7898 0.0816
0.7893 0.1627
0.7883 0.2426
0.7868 0.3211
0.7847 0.3974
0.7819 0.4712
0.7781 0.5420
0.7733 0.6094
0.7672 0.6730
0.7596 0.7325
0.7503 0.7875
0.7391 0.8379
0.7257 0.8834
0.7100 0.9238
0.6917 0.9591
0.6707 0.9892
0.6467 1.0141
0.6197 1.0338
0.5895 1.0484
0.5560 1.0580
0.5191 1.0627
0.4789 1.0627
0.4353 1.0583
0.3885 1.0497
0.3384 1.0371
0.2852 1.0208
0.2291 1.0010
0.1703 0.9782
0.1090 0.9526
0.0454 0.9244
-0.0200 0.8940
-0.0870 0.8616
-0.1553 0.8276
-0.2244 0.7922
-0.2940 0.7557
-0.3637 0.7182
-0.4330 0.6800
-0.5016 0.6414
-0.5690 0.6024
-0.6348 0.5632
-0.6986 0.5240
-0.7600 0.4848
-0.8185 0.4458
-0.8739 0.4071
-0.9258 0.3686
-0.9737 0.3305
-1.0175 0.2926
-1.0569 0.2552
-1.0915 0.2180
-1.1212 0.1812
-1.1458 0.1446
-1.1650 0.1082
-1.1789 0.0721
-1.1872 0.0360
-1.1900 0
-1.1872 -0.0360
-1.1789 -0.0721
-1.1650 -0.1082
-1.1458 -0.1446
-1.1212 -0.1812
-1.0915 -0.2180
-1.0569 -0.2552
-1.0175 -0.2926
-0.9737 -0.3305
-0.9258 -0.3686
-0.8739 -0.4071
-0.8185 -0.4458
-0.7600 -0.4848
-0.6986 -0.5240
-0.6348 -0.5632
-0.5690 -0.6024
-0.5016 -0.6414
-0.4330 -0.6800
-0.3637 -0.7182
-0.2940 -0.7557
-0.2244 -0.7922
-0.1553 -0.8276
-0.0870 -0.8616
-0.0200 -0.8940
0.0454 -0.9244
0.1090 -0.9526
0.1703 -0.9782
0.2291 -1.0010
0.2852 -1.0208
0.3384 -1.0371
0.3885 -1.0497
0.4353 -1.0583
0.4789 -1.0627
0.5191 -1.0627
0.5560 -1.0580
0.5895 -1.0484
0.6197 -1.0338
0.6467 -1.0141
0.6707 -0.9892
0.6917 -0.9591
0.7100 -0.9238
0.7257 -0.8834
0.7391 -0.8379
0.7503 -0.7875
0.7596 -0.7325
0.7672 -0.6730
0.7733 -0.6094
0.7781 -0.5420
0.7819 -0.4712
0.7847 -0.3974
0.7868 -0.3211
0.7883 -0.2426
0.7893 -0.1627
0.7898 -0.0816
0.7900 0

  0 Comments

Sign in to comment.

Accepted Answer

Ameer Hamza
Ameer Hamza on 27 Jun 2018
Try this
x = points(:,1); % first column of points you shared
y = points(:,2); % second column of points
x_new = interp1(linspace(0, 2*pi, numel(x)), x, 0:2*pi/37:2*pi);
y_new = interp1(linspace(0, 2*pi, numel(y)), y, 0:2*pi/37:2*pi);
x_new and y_new contains the required points.

  0 Comments

Sign in to comment.

More Answers (0)

Tags


Translated by