How do I find polygonal curve length?
8 次查看(过去 30 天)
显示 更早的评论
My problem is to write a function to compute the length of a polygonal curve whose ith vertex has Cartesian coordinates x(i) and y(i). x and y must be row or column vectors of the same size.
0 个评论
采纳的回答
Image Analyst
2015-2-8
Can't you use the Pythagorean theorem:
% Some data... however you got it.
x = rand(1, 5);
y = rand(1, 5);
% Get delta x and delta y.
dx = abs([diff(x), x(end)-x(1)])
dy = abs([diff(y), y(end)-y(1)])
% Find distances between vertices
distancesBetweenVertices = sqrt(dx.^2 + dy.^2)
% Sum all the sides to get the total perimeter.
perimeter = sum(distancesBetweenVertices)
2 个评论
Image Analyst
2015-2-11
You can write a couple of lines of code. For example to find x and y for a quadratic function between x=-5 and 5, with 31 coordinates, do this:
x = linspace(-5, 5, 31);
y = a * x.^2 + b * x + c; % You define a, b, anc c before this.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Computational Geometry 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!