Shortest Distance Between Two Lines in N dimensions

Function calculates shortest distance between two lines presented by two points for each line.
2K Downloads
Updated 1 Apr 2011

View License

Function uses algorithm from Dan Sunday internet site
http://softsurfer.com/Archive/algorithm_0106/algorithm_0106.htm#dist3D_Segment_to_Segment
L1, L2 includes two points in matrix of 2*n
where n are dimensions (3 in 3D).
d - shortest distance between two lines
Pc,Qc - points where exists shortest distance d

EXAMPLE:
L1=rand(2,3);
L2=rand(2,3);
[d Pc Qc]=distBW2lines(L1,L2)

Functions of lines L1,L2 and shortest distance line
can be plotted in 3d or with minor change in 2D by
removing comments sign from code at the end of the file.
In some cases points Pc,Qc will not displayed accurately on line.
Just change value of par parameter according to point.

Programmed by Alexander Brodsky
newshurik at yahoo.com

Cite As

Alexander Brodsky (2024). Shortest Distance Between Two Lines in N dimensions (https://www.mathworks.com/matlabcentral/fileexchange/29130-shortest-distance-between-two-lines-in-n-dimensions), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2010a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Construction in Help Center and MATLAB Answers
Acknowledgements

Inspired: Shortest distance between two line segments

Community Treasure Hunt

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

Start Hunting!
Version Published Release Notes
1.1.0.0

1. Distance value was corrected (thanks to Guy)
2. Dot function was changed by matrix multiplication for speeding the script

1.0.0.0