How to make a line of fixed length?

31 visualizaciones (últimos 30 días)
Mariam Shahab
Mariam Shahab el 29 de Nov. de 2022
Comentada: Star Strider el 29 de Nov. de 2022
Hi all,
I want to make a line that has a fixed length and it has a partciular direction. I would appreciate any suggestions for this. Thanks!
  2 comentarios
Davide Masiello
Davide Masiello el 29 de Nov. de 2022
I am afraid you need to be clearer. By making, do you mean plotting?
Moreover, what do you mean with direction?
Mariam Shahab
Mariam Shahab el 29 de Nov. de 2022
Yes, by making, I meant plotting. As for direction, I mean the orientation of the line (i.e. the slope of the line).

Iniciar sesión para comentar.

Respuesta aceptada

Star Strider
Star Strider el 29 de Nov. de 2022
It is relatively straightforward to write an anonymous function for this —
createLine = @(startpt, slope, len) [startpt(1) startpt(1)+len.*cos(atan(slope)); startpt(2) startpt(2)+len.*sin(atan(slope))];
slope = rand % Scalar
slope = 0.9275
startpoint = rand(1,2) % Two-Element Vector
startpoint = 1×2
0.2799 0.8866
long = 10*rand % Scalar
long = 7.5515
linevec = createLine(startpoint, slope, long)
linevec = 2×2
0.2799 5.8167 0.8866 6.0217
Check = [tan(atan2(diff(linevec(2,:)), diff(linevec(1,:)))) hypot(diff(linevec(2,:)),diff(linevec(1,:)))]
Check = 1×2
0.9275 7.5515
figure
plot(linevec(1,:), linevec(2,:))
grid
axis('padded','equal')
title(sprintf('Line from (%.2f, %.2f) to (%.2f, %.2f), slope %.2f, length %.2f', [linevec(:,1); linevec(:,2); slope; long]))
Experiment with the ‘createLine’ function.
.
  2 comentarios
Mariam Shahab
Mariam Shahab el 29 de Nov. de 2022
Alright, thank you
Star Strider
Star Strider el 29 de Nov. de 2022
As always, my pleasure!

Iniciar sesión para comentar.

Más respuestas (1)

Vilém Frynta
Vilém Frynta el 29 de Nov. de 2022
You can specify length with numbers of your choice.
You can specify direction numerically as well, you just need to use your imagination and get creative.
x = [1 11];
y = [2 22];
line(x,y);

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by