How to devide a line passing through two points into equal segments?
2 次查看(过去 30 天)
显示 更早的评论
Hello, I have two points: (x1,y1) and (x2,y2). Now I want to devide the line passing through these two points into 'n' equal segments. Unfortunately the 'linspace' can just be applied to horizontal and vertical lines! Does anybody have an idea?
0 个评论
采纳的回答
Star Strider
2016-7-21
Coimbine linspace and interp1:
x = [1 5]; % Create Data
y = [3 1]; % Create Data
N = 3; % Number Of Segments
xi = linspace(x(1), x(2), N+1); % Interpolation Vector
yi = interp1(x, y, xi, 'linear'); % Find ‘yi’ For Each ‘xi’
figure(1)
plot(x, y, '-or')
hold on
plot(xi(2:end-1), yi(2:end-1), 'bp')
hold off
grid
axis([0 6 0 4])
0 个评论
更多回答(1 个)
dpb
2016-7-21
For straight line it doesn't matter; just divide dx, dy by the number of intervals.
xpts=linspace(x(1),x(end),N);
ditto for y.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Curve Fitting Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!