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.

 채택된 답변

Image Analyst
Image Analyst 2015년 2월 8일

1 개 추천

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

Jim Oste
Jim Oste 2015년 2월 11일
How would I go about finding the x and y coordinates of a given function?
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개)

카테고리

도움말 센터File Exchange에서 NaNs에 대해 자세히 알아보기

태그

질문:

2015년 2월 8일

댓글:

2015년 2월 11일

Community Treasure Hunt

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

Start Hunting!

Translated by