In Euclidean geometry, the intersection of a line and a line can be the empty set, a point, or another line. Distinguishing these cases and finding the intersection have uses, for example, in computer graphics, motion planning, and collision detection.
In three-dimensional Euclidean geometry, if two lines are not in the same plane, they have no point of intersection and are called skew lines. If they are in the same plane, however, there are three possibilities: if they coincide (are not distinct lines), they have an infinitude of points in common (namely all of the points on either of them); if they are distinct but have the same slope, they are said to be parallel and have no points in common; otherwise, they have a single point of intersection.
The distinguishing features of non-Euclidean geometry are the number and locations of possible intersections between two lines and the number of possible lines with no intersections (parallel lines) with a given line.[further explanation needed]
Formulas
A necessary condition for two lines to intersect is that they are in the same plane—that is, are not skew lines. Satisfaction of this condition is equivalent to the tetrahedron with vertices at two of the points on one line and two of the points on the other line being degenerate in the sense of having zero volume. For the algebraic form of this condition, see Skew lines § Testing for skewness.
Given two points on each line
First we consider the intersection of two lines L1 and L2 in two-dimensional space, with line L1 being defined by two distinct points (x1, y1) and (x2, y2), and line L2 being defined by two distinct points (x3, y3) and (x4, y4).
The intersection P of line L1 and L2 can be defined using determinants.
The determinants can be written out as:
When the two lines are parallel or coincident, the denominator is zero.
Given two points on each line segment
The intersection point above is for the infinitely long lines defined by the points, rather than the line segments between the points, and can produce an intersection point not contained in either of the two line segments. In order to find the position of the intersection in respect to the line segments, we can define lines L1 and L2 in terms of first degree Bézier parameters:
(where t and u are real numbers). The intersection point of the lines is found with one of the following values of t or u, where
and
with
There will be an intersection if 0 ≤ t ≤ 1 and 0 ≤ u ≤ 1. The intersection point falls within the first line segment if 0 ≤ t ≤ 1, and it falls within the second line segment if 0 ≤ u ≤ 1. These inequalities can be tested without the need for division, allowing rapid determination of the existence of any line segment intersection before calculating its exact point.
Given two line equations
The x and y coordinates of the point of intersection of two non-vertical lines can easily be found using the following substitutions and rearrangements.
Suppose that two lines have the equations y = ax + c and y = bx + d where a and b are the slopes (gradients) of the lines and where c and d are the y-intercepts of the lines. At the point where the two lines intersect (if they do), both y coordinates will be the same, hence the following equality:
We can rearrange this expression in order to extract the value of x,
and so,
To find the y coordinate, all we need to do is substitute the value of x into either one of the two line equations, for example, into the first:
Hence, the point of intersection is
Note that if a = b then the two lines are parallel and they do not intersect, unless c = d as well, in which case the lines are and they intersect at every point.
Using homogeneous coordinates
By using homogeneous coordinates, the intersection point of two implicitly defined lines can be determined quite easily. In 2D, every point can be defined as a projection of a 3D point, given as the ordered triple (x, y, w). The mapping from 3D to 2D coordinates is (x′, y′) = (x/w, y/w). We can convert 2D points to homogeneous coordinates by defining them as (x, y, 1).
Assume that we want to find intersection of two infinite lines in 2-dimensional space, defined as a1x + b1y + c1 = 0 and a2x + b2y + c2 = 0. We can represent these two lines in line coordinates as U1 = (a1, b1, c1) and U2 = (a2, b2, c2). The intersection P′ of two lines is then simply given by
If cp = 0, the lines do not intersect.
More than two lines
The intersection of two lines can be generalized to involve additional lines. The existence of and expression for the n-line intersection problem are as follows.
In two dimensions
In two dimensions, more than two lines almost certainly do not intersect at a single point. To determine if they do and, if so, to find the intersection point, write the ith equation (i = 1, …, n) as
and stack these equations into matrix form as
where the ith row of the n × 2 matrix A is [ai1, ai2], w is the 2 × 1 vector [x
y], and the ith element of the column vector b is bi. If A has independent columns, its rank is 2. Then if and only if the rank of the augmented matrix [A | b] is also 2, there exists a solution of the matrix equation and thus an intersection point of the n lines. The intersection point, if it exists, is given by
where Ag is the Moore–Penrose generalized inverse of A (which has the form shown because A has full column rank). Alternatively, the solution can be found by jointly solving any two independent equations. But if the rank of A is only 1, then if the rank of the augmented matrix is 2 there is no solution but if its rank is 1 then all of the lines coincide with each other.
In three dimensions
The above approach can be readily extended to three dimensions. In three or more dimensions, even two lines almost certainly do not intersect; pairs of non-parallel lines that do not intersect are called skew lines. But if an intersection does exist it can be found, as follows.
In three dimensions a line is represented by the intersection of two planes, each of which has an equation of the form
Thus a set of n lines can be represented by 2n equations in the 3-dimensional coordinate vector w:
where now A is 2n × 3 and b is 2n × 1. As before there is a unique intersection point if and only if A has full column rank and the augmented matrix [A | b] does not, and the unique intersection if it exists is given by
Nearest points to skew lines
In two or more dimensions, we can usually find a point that is mutually closest to two or more lines in a least-squares sense.
In two dimensions
In the two-dimensional case, first, represent line i as a point pi on the line and a unit normal vector n̂i, perpendicular to that line. That is, if x1 and x2 are points on line 1, then let p1 = x1 and let
which is the unit vector along the line, rotated by a right angle.
The distance from a point x to the line (p, n̂) is given by
And so the squared distance from a point x to a line is
The sum of squared distances to many lines is the cost function:
This can be rearranged:
To find the minimum, we differentiate with respect to x and set the result equal to the zero vector:
so
and so
In more than two dimensions
While n̂i is not well-defined in more than two dimensions, this can be generalized to any number of dimensions by noting that n̂in̂iT is simply the symmetric matrix with all eigenvalues unity except for a zero eigenvalue in the direction along the line providing a seminorm on the distance between pi and another point giving the distance to the line. In any number of dimensions, if v̂i is a unit vector along the ith line, then
- becomes
where I is the identity matrix, and so
General derivation
In order to find the intersection point of a set of lines, we calculate the point with minimum distance to them. Each line is defined by an origin ai and a unit direction vector n̂i. The square of the distance from a point p to one of the lines is given from Pythagoras:
where (p − ai)Tn̂i is the projection of p − ai on line i. The sum of distances to the square to all lines is
To minimize this expression, we differentiate it with respect to p.
which results in
where I is the identity matrix. This is a matrix Sp = C, with solution p = S+C, where S+ is the pseudo-inverse of S.
Non-Euclidean geometry
This section needs expansion. You can help by adding to it. (June 2022) |
In spherical geometry, any two great circles intersect.
In hyperbolic geometry, given any line and any point, there are infinitely many lines through that point that do not intersect the given line.
See also
- Line segment intersection
- Line intersection in projective space
- Distance between two parallel lines
- Distance from a point to a line
- Line–plane intersection
- Parallel postulate
- Triangulation (computer vision)
- Intersection (Euclidean geometry) § Two line segments
References
- Cook, Jeremy (November 21, 2023). "Coplanar Lines in Geometry | Definition, Diagrams & Examples". Retrieved November 1, 2024.
- Weisstein, Eric W. "Line-Line Intersection". MathWorld. Retrieved 2008-01-10.
- Antonio, Franklin (1992). "Chapter IV.6: Faster Line Segment Intersection". In Kirk, David (ed.). Graphics Gems III. Academic Press, Inc. pp. 199–202. ISBN 0-12-059756-X.
- Birchfield, Stanley (1998-04-23). "Homogeneous coordinates". robotics.stanford.edu. Archived from the original on 2000-09-29. Retrieved 2015-08-18.
- Traa, Johannes (2013). "Least-Squares Intersection of Lines" (PDF). cal.cs.illinois.edu. Archived from the original (PDF) on 2017-09-12. Retrieved 2018-08-30.
- "Exploring Hyperbolic Space" (PDF). math.berkeley.edu. Retrieved 2022-06-03.
External links
- Distance between Lines and Segments with their Closest Point of Approach, applicable to two, three, or more dimensions.
In Euclidean geometry the intersection of a line and a line can be the empty set a point or another line Distinguishing these cases and finding the intersection have uses for example in computer graphics motion planning and collision detection Two intersecting lines In three dimensional Euclidean geometry if two lines are not in the same plane they have no point of intersection and are called skew lines If they are in the same plane however there are three possibilities if they coincide are not distinct lines they have an infinitude of points in common namely all of the points on either of them if they are distinct but have the same slope they are said to be parallel and have no points in common otherwise they have a single point of intersection The distinguishing features of non Euclidean geometry are the number and locations of possible intersections between two lines and the number of possible lines with no intersections parallel lines with a given line further explanation needed FormulasA necessary condition for two lines to intersect is that they are in the same plane that is are not skew lines Satisfaction of this condition is equivalent to the tetrahedron with vertices at two of the points on one line and two of the points on the other line being degenerate in the sense of having zero volume For the algebraic form of this condition see Skew lines Testing for skewness Given two points on each line First we consider the intersection of two lines L1 and L2 in two dimensional space with line L1 being defined by two distinct points x1 y1 and x2 y2 and line L2 being defined by two distinct points x3 y3 and x4 y4 The intersection P of line L1 and L2 can be defined using determinants Px x1y1x2y2 x11x21 x3y3x4y4 x31x41 x11x21 y11y21 x31x41 y31y41 Py x1y1x2y2 y11y21 x3y3x4y4 y31y41 x11x21 y11y21 x31x41 y31y41 displaystyle P x frac begin vmatrix begin vmatrix x 1 amp y 1 x 2 amp y 2 end vmatrix amp begin vmatrix x 1 amp 1 x 2 amp 1 end vmatrix begin vmatrix x 3 amp y 3 x 4 amp y 4 end vmatrix amp begin vmatrix x 3 amp 1 x 4 amp 1 end vmatrix end vmatrix begin vmatrix begin vmatrix x 1 amp 1 x 2 amp 1 end vmatrix amp begin vmatrix y 1 amp 1 y 2 amp 1 end vmatrix begin vmatrix x 3 amp 1 x 4 amp 1 end vmatrix amp begin vmatrix y 3 amp 1 y 4 amp 1 end vmatrix end vmatrix qquad P y frac begin vmatrix begin vmatrix x 1 amp y 1 x 2 amp y 2 end vmatrix amp begin vmatrix y 1 amp 1 y 2 amp 1 end vmatrix begin vmatrix x 3 amp y 3 x 4 amp y 4 end vmatrix amp begin vmatrix y 3 amp 1 y 4 amp 1 end vmatrix end vmatrix begin vmatrix begin vmatrix x 1 amp 1 x 2 amp 1 end vmatrix amp begin vmatrix y 1 amp 1 y 2 amp 1 end vmatrix begin vmatrix x 3 amp 1 x 4 amp 1 end vmatrix amp begin vmatrix y 3 amp 1 y 4 amp 1 end vmatrix end vmatrix The determinants can be written out as Px x1y2 y1x2 x3 x4 x1 x2 x3y4 y3x4 x1 x2 y3 y4 y1 y2 x3 x4 Py x1y2 y1x2 y3 y4 y1 y2 x3y4 y3x4 x1 x2 y3 y4 y1 y2 x3 x4 displaystyle begin aligned P x amp frac x 1 y 2 y 1 x 2 x 3 x 4 x 1 x 2 x 3 y 4 y 3 x 4 x 1 x 2 y 3 y 4 y 1 y 2 x 3 x 4 4px P y amp frac x 1 y 2 y 1 x 2 y 3 y 4 y 1 y 2 x 3 y 4 y 3 x 4 x 1 x 2 y 3 y 4 y 1 y 2 x 3 x 4 end aligned When the two lines are parallel or coincident the denominator is zero Given two points on each line segment The intersection point above is for the infinitely long lines defined by the points rather than the line segments between the points and can produce an intersection point not contained in either of the two line segments In order to find the position of the intersection in respect to the line segments we can define lines L1 and L2 in terms of first degree Bezier parameters L1 x1y1 t x2 x1y2 y1 L2 x3y3 u x4 x3y4 y3 displaystyle L 1 begin bmatrix x 1 y 1 end bmatrix t begin bmatrix x 2 x 1 y 2 y 1 end bmatrix qquad L 2 begin bmatrix x 3 y 3 end bmatrix u begin bmatrix x 4 x 3 y 4 y 3 end bmatrix where t and u are real numbers The intersection point of the lines is found with one of the following values of t or u where t x1 x3x3 x4y1 y3y3 y4 x1 x2x3 x4y1 y2y3 y4 x1 x3 y3 y4 y1 y3 x3 x4 x1 x2 y3 y4 y1 y2 x3 x4 displaystyle t frac begin vmatrix x 1 x 3 amp x 3 x 4 y 1 y 3 amp y 3 y 4 end vmatrix begin vmatrix x 1 x 2 amp x 3 x 4 y 1 y 2 amp y 3 y 4 end vmatrix frac x 1 x 3 y 3 y 4 y 1 y 3 x 3 x 4 x 1 x 2 y 3 y 4 y 1 y 2 x 3 x 4 and u x1 x2x1 x3y1 y2y1 y3 x1 x2x3 x4y1 y2y3 y4 x1 x2 y1 y3 y1 y2 x1 x3 x1 x2 y3 y4 y1 y2 x3 x4 displaystyle u frac begin vmatrix x 1 x 2 amp x 1 x 3 y 1 y 2 amp y 1 y 3 end vmatrix begin vmatrix x 1 x 2 amp x 3 x 4 y 1 y 2 amp y 3 y 4 end vmatrix frac x 1 x 2 y 1 y 3 y 1 y 2 x 1 x 3 x 1 x 2 y 3 y 4 y 1 y 2 x 3 x 4 with Px Py x1 t x2 x1 y1 t y2 y1 or Px Py x3 u x4 x3 y3 u y4 y3 displaystyle P x P y bigl x 1 t x 2 x 1 y 1 t y 2 y 1 bigr quad text or quad P x P y bigl x 3 u x 4 x 3 y 3 u y 4 y 3 bigr There will be an intersection if 0 t 1 and 0 u 1 The intersection point falls within the first line segment if 0 t 1 and it falls within the second line segment if 0 u 1 These inequalities can be tested without the need for division allowing rapid determination of the existence of any line segment intersection before calculating its exact point Given two line equations The x and y coordinates of the point of intersection of two non vertical lines can easily be found using the following substitutions and rearrangements Suppose that two lines have the equations y ax c and y bx d where a and b are the slopes gradients of the lines and where c and d are the y intercepts of the lines At the point where the two lines intersect if they do both y coordinates will be the same hence the following equality ax c bx d displaystyle ax c bx d We can rearrange this expression in order to extract the value of x ax bx d c displaystyle ax bx d c and so x d ca b displaystyle x frac d c a b To find the y coordinate all we need to do is substitute the value of x into either one of the two line equations for example into the first y ad ca b c displaystyle y a frac d c a b c Hence the point of intersection is P d ca b ad ca b c displaystyle P left frac d c a b a frac d c a b c right Note that if a b then the two lines are parallel and they do not intersect unless c d as well in which case the lines are and they intersect at every point Using homogeneous coordinates By using homogeneous coordinates the intersection point of two implicitly defined lines can be determined quite easily In 2D every point can be defined as a projection of a 3D point given as the ordered triple x y w The mapping from 3D to 2D coordinates is x y x w y w We can convert 2D points to homogeneous coordinates by defining them as x y 1 Assume that we want to find intersection of two infinite lines in 2 dimensional space defined as a1x b1y c1 0 and a2x b2y c2 0 We can represent these two lines in line coordinates as U1 a1 b1 c1 and U2 a2 b2 c2 The intersection P of two lines is then simply given by P ap bp cp U1 U2 b1c2 b2c1 a2c1 a1c2 a1b2 a2b1 displaystyle P a p b p c p U 1 times U 2 b 1 c 2 b 2 c 1 a 2 c 1 a 1 c 2 a 1 b 2 a 2 b 1 If cp 0 the lines do not intersect More than two linesThe intersection of two lines can be generalized to involve additional lines The existence of and expression for the n line intersection problem are as follows In two dimensions In two dimensions more than two lines almost certainly do not intersect at a single point To determine if they do and if so to find the intersection point write the i th equation i 1 n as ai1ai2 xy bi displaystyle begin bmatrix a i1 amp a i2 end bmatrix begin bmatrix x y end bmatrix b i and stack these equations into matrix form as Aw b displaystyle mathbf A mathbf w mathbf b where the i th row of the n 2 matrix A is ai1 ai2 w is the 2 1 vector x y and the i th element of the column vector b is bi If A has independent columns its rank is 2 Then if and only if the rank of the augmented matrix A b is also 2 there exists a solution of the matrix equation and thus an intersection point of the n lines The intersection point if it exists is given by w Agb ATA 1ATb displaystyle mathbf w mathbf A mathrm g mathbf b left mathbf A mathsf T mathbf A right 1 mathbf A mathsf T mathbf b where Ag is the Moore Penrose generalized inverse of A which has the form shown because A has full column rank Alternatively the solution can be found by jointly solving any two independent equations But if the rank of A is only 1 then if the rank of the augmented matrix is 2 there is no solution but if its rank is 1 then all of the lines coincide with each other In three dimensions The above approach can be readily extended to three dimensions In three or more dimensions even two lines almost certainly do not intersect pairs of non parallel lines that do not intersect are called skew lines But if an intersection does exist it can be found as follows In three dimensions a line is represented by the intersection of two planes each of which has an equation of the form ai1ai2ai3 xyz bi displaystyle begin bmatrix a i1 amp a i2 amp a i3 end bmatrix begin bmatrix x y z end bmatrix b i Thus a set of n lines can be represented by 2n equations in the 3 dimensional coordinate vector w Aw b displaystyle mathbf A mathbf w mathbf b where now A is 2n 3 and b is 2n 1 As before there is a unique intersection point if and only if A has full column rank and the augmented matrix A b does not and the unique intersection if it exists is given by w ATA 1ATb displaystyle mathbf w left mathbf A mathsf T mathbf A right 1 mathbf A mathsf T mathbf b Nearest points to skew linesPQ the shortest distance between two skew lines AB and CD is perpendicular to both AB and CD In two or more dimensions we can usually find a point that is mutually closest to two or more lines in a least squares sense In two dimensions In the two dimensional case first represent line i as a point pi on the line and a unit normal vector n i perpendicular to that line That is if x1 and x2 are points on line 1 then let p1 x1 and let n 1 0 110 x2 x1 x2 x1 displaystyle mathbf hat n 1 begin bmatrix 0 amp 1 1 amp 0 end bmatrix frac mathbf x 2 mathbf x 1 mathbf x 2 mathbf x 1 which is the unit vector along the line rotated by a right angle The distance from a point x to the line p n is given by d x p n x p n x p Tn n T x p x p Tn n T x p displaystyle d bigl mathbf x mathbf p mathbf hat n bigr bigl mathbf x mathbf p cdot mathbf hat n bigr left mathbf x mathbf p mathsf T mathbf hat n right left mathbf hat n mathsf T mathbf x mathbf p right sqrt mathbf x mathbf p mathsf T mathbf hat n mathbf hat n mathsf T mathbf x mathbf p And so the squared distance from a point x to a line is d x p n 2 x p T n n T x p displaystyle d bigl mathbf x mathbf p mathbf hat n bigr 2 mathbf x mathbf p mathsf T left mathbf hat n mathbf hat n mathsf T right mathbf x mathbf p The sum of squared distances to many lines is the cost function E x i x pi T n in iT x pi displaystyle E mathbf x sum i mathbf x mathbf p i mathsf T left mathbf hat n i mathbf hat n i mathsf T right mathbf x mathbf p i This can be rearranged E x ixTn in iTx xTn in iTpi piTn in iTx piTn in iTpi xT in in iT x 2xT in in iTpi ipiTn in iTpi displaystyle begin aligned E mathbf x amp sum i mathbf x mathsf T mathbf hat n i mathbf hat n i mathsf T mathbf x mathbf x mathsf T mathbf hat n i mathbf hat n i mathsf T mathbf p i mathbf p i mathsf T mathbf hat n i mathbf hat n i mathsf T mathbf x mathbf p i mathsf T mathbf hat n i mathbf hat n i mathsf T mathbf p i amp mathbf x mathsf T left sum i mathbf hat n i mathbf hat n i mathsf T right mathbf x 2 mathbf x mathsf T left sum i mathbf hat n i mathbf hat n i mathsf T mathbf p i right sum i mathbf p i mathsf T mathbf hat n i mathbf hat n i mathsf T mathbf p i end aligned To find the minimum we differentiate with respect to x and set the result equal to the zero vector E x x 0 2 in in iT x 2 in in iTpi displaystyle frac partial E mathbf x partial mathbf x boldsymbol 0 2 left sum i mathbf hat n i mathbf hat n i mathsf T right mathbf x 2 left sum i mathbf hat n i mathbf hat n i mathsf T mathbf p i right so in in iT x in in iTpi displaystyle left sum i mathbf hat n i mathbf hat n i mathsf T right mathbf x sum i mathbf hat n i mathbf hat n i mathsf T mathbf p i and so x in in iT 1 in in iTpi displaystyle mathbf x left sum i mathbf hat n i mathbf hat n i mathsf T right 1 left sum i mathbf hat n i mathbf hat n i mathsf T mathbf p i right In more than two dimensions While n i is not well defined in more than two dimensions this can be generalized to any number of dimensions by noting that n in iT is simply the symmetric matrix with all eigenvalues unity except for a zero eigenvalue in the direction along the line providing a seminorm on the distance between pi and another point giving the distance to the line In any number of dimensions if v i is a unit vector along the i th line then n in iT displaystyle mathbf hat n i mathbf hat n i mathsf T becomes I v iv iT displaystyle mathbf I mathbf hat v i mathbf hat v i mathsf T where I is the identity matrix and so x iI v iv iT 1 i I v iv iT pi displaystyle x left sum i mathbf I mathbf hat v i mathbf hat v i mathsf T right 1 left sum i left mathbf I mathbf hat v i mathbf hat v i mathsf T right mathbf p i right General derivation In order to find the intersection point of a set of lines we calculate the point with minimum distance to them Each line is defined by an origin ai and a unit direction vector n i The square of the distance from a point p to one of the lines is given from Pythagoras di2 p ai 2 p ai Tn i 2 p ai T p ai p ai Tn i 2 displaystyle d i 2 left mathbf p mathbf a i right 2 left left mathbf p mathbf a i right mathsf T mathbf hat n i right 2 left mathbf p mathbf a i right mathsf T left mathbf p mathbf a i right left left mathbf p mathbf a i right mathsf T mathbf hat n i right 2 where p ai Tn i is the projection of p ai on line i The sum of distances to the square to all lines is idi2 i p ai T p ai p ai Tn i 2 displaystyle sum i d i 2 sum i left left mathbf p mathbf a i right mathsf T left mathbf p mathbf a i right left left mathbf p mathbf a i right mathsf T mathbf hat n i right 2 right To minimize this expression we differentiate it with respect to p i 2 p ai 2 p ai Tn i n i 0 displaystyle sum i left 2 left mathbf p mathbf a i right 2 left left mathbf p mathbf a i right mathsf T mathbf hat n i right mathbf hat n i right boldsymbol 0 i p ai i n in iT p ai displaystyle sum i left mathbf p mathbf a i right sum i left mathbf hat n i mathbf hat n i mathsf T right left mathbf p mathbf a i right which results in i I n in iT p i I n in iT ai displaystyle left sum i left mathbf I mathbf hat n i mathbf hat n i mathsf T right right mathbf p sum i left mathbf I mathbf hat n i mathbf hat n i mathsf T right mathbf a i where I is the identity matrix This is a matrix Sp C with solution p S C where S is the pseudo inverse of S Non Euclidean geometryThis section needs expansion You can help by adding to it June 2022 From left to right Euclidean geometry spherical geometry and hyperbolic geometry In spherical geometry any two great circles intersect In hyperbolic geometry given any line and any point there are infinitely many lines through that point that do not intersect the given line See alsoLine segment intersection Line intersection in projective space Distance between two parallel lines Distance from a point to a line Line plane intersection Parallel postulate Triangulation computer vision Intersection Euclidean geometry Two line segmentsReferencesCook Jeremy November 21 2023 Coplanar Lines in Geometry Definition Diagrams amp Examples Retrieved November 1 2024 Weisstein Eric W Line Line Intersection MathWorld Retrieved 2008 01 10 Antonio Franklin 1992 Chapter IV 6 Faster Line Segment Intersection In Kirk David ed Graphics Gems III Academic Press Inc pp 199 202 ISBN 0 12 059756 X Birchfield Stanley 1998 04 23 Homogeneous coordinates robotics stanford edu Archived from the original on 2000 09 29 Retrieved 2015 08 18 Traa Johannes 2013 Least Squares Intersection of Lines PDF cal cs illinois edu Archived from the original PDF on 2017 09 12 Retrieved 2018 08 30 Exploring Hyperbolic Space PDF math berkeley edu Retrieved 2022 06 03 External linksDistance between Lines and Segments with their Closest Point of Approach applicable to two three or more dimensions