How do I find polygonal curve length?

3 visualizzazioni (ultimi 30 giorni)
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.

Risposta accettata

Image Analyst
Image Analyst il 8 Feb 2015
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 Commenti
Jim Oste
Jim Oste il 11 Feb 2015
How would I go about finding the x and y coordinates of a given function?
Image Analyst
Image Analyst il 11 Feb 2015
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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Elementary Polygons in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by