gdist
gdist returns the graphical distance between click points from mouse. This function is a modified form of ginput, but differs in that gdist can return distance between each point or cumulative distance along a path of clicked points. gdist gives the user visual confirmation of clicked points, and points can be undone using the backspace key.
Data points are entered by pressing a mouse button or any key on the keyboard except the following:
Carriage return Terminates data entry.
Backspace Deletes previous data point.
z Zooms in, centered on current cursor location.
x Zooms out, centered on current cursor location.
Syntax:
EuclideanDistance = gdist
PathDist = gdist('path')
[...] = gdist(N)
[...] = gdist('color',ColorSpec)
[...,x,y] = gdist(...)
[...,x,y,h] = gdist(...)
Description:
EuclideanDistance = gdist gathers an unlimited number of points until the return key is pressed. Length of EuclideanDistance array is N-1 and is equivalent to EuclideanDistance = diff(PathDist).
PathDist = gdist('path') returns the distance traveled along a path of N clicks. Length of PathDist is equal to the number of clicks N, and the first first value in PathDist will always be zero. PathDist is equivalent to PathDist = [0;cumsum(EuclideanDistance)];
[...] = gdist(N) gets N points from the current axes and returns a vector containing the Euclidean distance from point to point.
[...] = gdist('color',ColorSpec) specifies color of the temporary lines and markers placed on the plot to assist the user.
[...,x,y] = gdist(...) returns x and y coordinates of clicked points.
[...,x,y,h] = gdist(...) returns a handle of line and marker objects clicked by the user. If a handle h is requested, the markers are not automatically removed after the point-entering process has terminated.
Examples:
Any of the inputs described above can be combined in one argument. For example, after plotting some data like this:
plot(sin(1:.01:7),'b')
you can simply type
gdist
to enter as many points as you'd like via mouse clicks. Or if you know ahead of time that you want to enter 4 points, type
gdist(4)
or if you want to calculate the cumulative distance at each step along 4-point path, and you want the temporary guiding lines to be red, type
gdist(4,'path','color','red')
If you'd like to keep that red line in place after using gdist, request the handle h like this:
[pathdist,~,~,h] = gdist(4,'path','color','red');
Then you can delete the red line at your leisure by
delete(h)
For greater precision, type z to zoom in, or x to zoom out. Zooming in or out recenters the plot on the current mouse position. If you accidentally click a point you'd like to undo, click backspace.
Citar como
Chad Greene (2024). gdist (https://www.mathworks.com/matlabcentral/fileexchange/48489-gdist), MATLAB Central File Exchange. Recuperado .
Compatibilidad con la versión de MATLAB
Compatibilidad con las plataformas
Windows macOS LinuxCategorías
Etiquetas
Agradecimientos
Inspirado por: gslope, MYGINPUT, ginput2.m v3.1 (Nov 2009), Custom GINPUT
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Descubra Live Editor
Cree scripts con código, salida y texto formateado en un documento ejecutable.
Versión | Publicado | Notas de la versión | |
---|---|---|---|
1.4.0.0 | fixed automatic naming. |
||
1.3.0.0 | Now supports line colorspec and zooming. |
||
1.2.0.0 | fixed automatic naming. |
||
1.1.0.0 | Now allows user to undo previous click using the backspace key. Also now includes a cumulative path distance option. |
||
1.0.0.0 |