The Central Idea
Two geometric objects intersect wherever the same point belongs to both.
If one object is described by
\[ F(x,y)=0 \]and another by
\[ G(x,y)=0, \]then an intersection point satisfies both equations:
\[ \boxed{ F(x,y)=0 \qquad\text{and}\qquad G(x,y)=0 }. \]Computational intersection is therefore a combination of geometry, algebra, and verification.
Intersection Is a Set
Two objects do not always meet in exactly one point.
Their intersection may contain:
- no points;
- one point;
- several isolated points;
- a whole segment or curve;
- infinitely many points when the objects coincide.
A correct intersection algorithm must distinguish these possibilities.
Lines, Rays, and Segments Are Different Objects
A line extends infinitely in both directions.
A ray starts at one endpoint and extends infinitely in one direction.
A segment is restricted to the points between two endpoints.
Two supporting lines may intersect even when the corresponding segments do not. For that reason, solving the line equations is often only the first stage of a segment-intersection algorithm.
Parametric Form of a Line
A line through a point \(P\) in direction \(\mathbf{r}\ne\mathbf{0}\) can be written
\[ \boxed{ L(t)=P+t\mathbf{r} }. \]In coordinates,
\[ P=(p_x,p_y), \qquad \mathbf{r}=(r_x,r_y), \]so
\[ \boxed{ \begin{aligned} x&=p_x+tr_x,\\ y&=p_y+tr_y. \end{aligned} } \]Parametric form is especially useful because the parameter tells us where the point lies along the geometric object.
Parametric Form of a Segment
The segment from \(P\) to \(Q\) can be represented as
\[ \boxed{ S(t)=P+t(Q-P) } \]with the restriction
\[ \boxed{ 0\le t\le1 }. \]The same formula represents the entire supporting line if \(t\) is allowed to range over all real numbers.
The parameter restriction is what turns a line computation into a segment computation.
Line-Line Intersection in Parametric Form
Suppose two lines are
\[ L_1(t)=P+t\mathbf{r} \]and
\[ L_2(u)=Q+u\mathbf{s}. \]At an intersection,
\[ P+t\mathbf{r}=Q+u\mathbf{s}. \]Rearranging gives
\[ t\mathbf{r}-u\mathbf{s}=Q-P. \]This is a \(2\times2\) linear system for the unknown parameters \(t\) and \(u\).
Using the Two-Dimensional Cross Product
Let
\[ \operatorname{cross2D}(\mathbf{a},\mathbf{b}) = a_xb_y-a_yb_x. \]If
\[ \mathbf{r}\times\mathbf{s}\ne0, \]then the two direction vectors are not parallel and the supporting lines intersect in exactly one point.
The parameters are
\[ \boxed{ t= \frac{(Q-P)\times\mathbf{s}} {\mathbf{r}\times\mathbf{s}} } \]and
\[ \boxed{ u= \frac{(Q-P)\times\mathbf{r}} {\mathbf{r}\times\mathbf{s}} }. \]Why the Cross-Product Formula Works
Begin with
\[ P+t\mathbf{r}=Q+u\mathbf{s}. \]Rearrange:
\[ t\mathbf{r}-u\mathbf{s}=Q-P. \]Take the two-dimensional cross product with \(\mathbf{s}\):
\[ t(\mathbf{r}\times\mathbf{s}) - u(\mathbf{s}\times\mathbf{s}) = (Q-P)\times\mathbf{s}. \]Since
\[ \mathbf{s}\times\mathbf{s}=0, \]the \(u\)-term disappears, giving the formula for \(t\).
Example: Intersecting Two Lines
Consider
\[ L_1(t)=(0,0)+t(2,1) \]and
\[ L_2(u)=(4,0)+u(-1,2). \]Here,
\[ P=(0,0),\quad Q=(4,0),\quad \mathbf{r}=(2,1),\quad \mathbf{s}=(-1,2). \]The denominator is
\[ \mathbf{r}\times\mathbf{s} = 2(2)-1(-1)=5. \]Since it is nonzero, the lines meet in exactly one point.
Finishing the Line-Line Example
Compute
\[ Q-P=(4,0). \]Then
\[ t= \frac{(4,0)\times(-1,2)}{5} = \frac{8}{5}. \]Therefore,
\[ L_1\left(\frac85\right) = \left( \frac{16}{5}, \frac85 \right). \]The intersection point is
\[ \boxed{ \left( \frac{16}{5}, \frac85 \right) }. \]Parallel Lines
If
\[ \mathbf{r}\times\mathbf{s}=0, \]then the direction vectors are parallel.
There are then two possibilities:
- the lines are distinct and have no intersection;
- the lines are collinear and have infinitely many common points.
A second test is needed to distinguish them.
Testing Whether Parallel Lines Are Collinear
If the direction vectors are parallel, test whether
\[ \boxed{ (Q-P)\times\mathbf{r}=0 }. \]If this is also zero, \(Q\) lies on the line through \(P\) in direction \(\mathbf{r}\), so the two lines are collinear.
Otherwise, they are distinct parallel lines.
The Complete Line-Line Classification
For
\[ L_1=P+t\mathbf{r}, \qquad L_2=Q+u\mathbf{s}, \]compute
\[ D=\mathbf{r}\times\mathbf{s}. \]- If \(D\ne0\), the lines have exactly one intersection.
- If \(D=0\) and \((Q-P)\times\mathbf{r}\ne0\), they are parallel and distinct.
- If \(D=0\) and \((Q-P)\times\mathbf{r}=0\), they are collinear.
Segment-Segment Intersection
Let
\[ S_1(t)=P+t\mathbf{r} \]and
\[ S_2(u)=Q+u\mathbf{s}, \]with
\[ 0\le t\le1, \qquad 0\le u\le1. \]If the supporting lines meet at parameters \(t\) and \(u\), then the segments intersect at that point exactly when both parameters lie within their allowed intervals.
Segment Parameters Are Membership Tests
Suppose the supporting lines intersect at
\[ t=\frac32, \qquad u=\frac12. \]The point lies on the second segment because
\[ 0\le\frac12\le1, \]but it lies beyond the endpoint of the first segment because
\[ \frac32>1. \]Therefore, the lines intersect but the segments do not.
Orientation-Based Segment Intersection
Another important method uses orientation predicates.
For segments \(AB\) and \(CD\), compute
\[ o_1=\operatorname{orient}(A,B,C), \] \[ o_2=\operatorname{orient}(A,B,D), \] \[ o_3=\operatorname{orient}(C,D,A), \] \[ o_4=\operatorname{orient}(C,D,B). \]In the noncollinear case, the segments properly cross when \(C\) and \(D\) lie on opposite sides of line \(AB\), and \(A\) and \(B\) lie on opposite sides of line \(CD\).
The Proper-Crossing Test
When no orientation value is zero, a proper intersection occurs when
\[ \boxed{ o_1o_2<0 \qquad\text{and}\qquad o_3o_4<0 }. \]The first inequality says \(C\) and \(D\) lie on opposite sides of the supporting line through \(A\) and \(B\).
The second says the corresponding statement is true in the other direction.
Endpoint and Collinear Cases
If one orientation value is zero, an endpoint may lie directly on the other segment.
For example, if
\[ \operatorname{orient}(A,B,C)=0, \]then \(A\), \(B\), and \(C\) are collinear. We must still check whether \(C\) lies between \(A\) and \(B\).
Collinearity alone does not guarantee segment membership.
Point-on-Segment Test
A point \(R=(x_R,y_R)\) lies on segment \(PQ\) when two conditions hold.
First, the three points are collinear:
\[ \operatorname{orient}(P,Q,R)=0. \]Second, the coordinates of \(R\) fall within the bounding ranges:
\[ \min(x_P,x_Q)\le x_R\le\max(x_P,x_Q), \] \[ \min(y_P,y_Q)\le y_R\le\max(y_P,y_Q). \]Together, these conditions distinguish the segment from its infinite supporting line.
Collinear Segment Overlap
When two segments are collinear, their intersection may be:
- empty;
- a single shared endpoint;
- a nonzero-length overlapping segment;
- the entirety of one segment if it lies inside the other.
This is qualitatively different from an ordinary single-point intersection.
Reducing Collinear Overlap to One Dimension
Once collinearity is known, overlap can be tested using one coordinate axis along which the segment has nonzero extent.
For intervals
\[ [a_1,a_2] \]and
\[ [b_1,b_2], \]overlap exists when
\[ \boxed{ \max(\min a,\min b) \le \min(\max a,\max b) }. \]Geometric overlap has been reduced to interval overlap.
Bounding Boxes as an Early Rejection Test
Before performing a more detailed segment-intersection calculation, compare the axis-aligned bounding boxes of the segments.
If the boxes do not overlap, the segments cannot intersect.
This is a necessary condition, not a sufficient one.
Bounding-box rejection is useful because it is inexpensive and can eliminate many impossible cases quickly.
Line Intersection in Implicit Form
A line may also be written
\[ ax+by=c. \]Two lines
\[ a_1x+b_1y=c_1 \]and
\[ a_2x+b_2y=c_2 \]form a linear system.
Its determinant is
\[ \boxed{ D=a_1b_2-a_2b_1 }. \]Solving Two Implicit Lines
When
\[ D\ne0, \]the lines intersect at exactly one point:
\[ \boxed{ x= \frac{c_1b_2-c_2b_1}{D} } \]and
\[ \boxed{ y= \frac{a_1c_2-a_2c_1}{D} }. \]This is Cramer's rule applied to the line-intersection system.
Vertical Lines Cause No Special Problem in Implicit Form
A vertical line
\[ x=k \]can be written
\[ 1x+0y=k. \]The implicit and parametric methods therefore avoid the division-by-zero difficulty that appears when all lines are forced into slope-intercept form.
Line-Circle Intersection
Consider a circle with center \(C\) and radius \(r\):
\[ \|X-C\|^2=r^2. \]Let a line be
\[ X=P+t\mathbf{d}. \]Substitute the line into the circle equation:
\[ \|P+t\mathbf{d}-C\|^2=r^2. \]This produces a quadratic equation in \(t\).
Deriving the Line-Circle Quadratic
Define
\[ \mathbf{m}=P-C. \]Then
\[ \|\mathbf{m}+t\mathbf{d}\|^2=r^2. \]Expanding with dot products gives
\[ (\mathbf{d}\cdot\mathbf{d})t^2 + 2(\mathbf{m}\cdot\mathbf{d})t + (\mathbf{m}\cdot\mathbf{m}-r^2) = 0. \]Therefore,
\[ \boxed{ At^2+Bt+C=0 } \]with
\[ A=\mathbf{d}\cdot\mathbf{d}, \] \[ B=2(\mathbf{m}\cdot\mathbf{d}), \] \[ C=\mathbf{m}\cdot\mathbf{m}-r^2. \]The Discriminant Classifies Line-Circle Intersection
For
\[ At^2+Bt+C=0, \]compute
\[ \boxed{ \Delta=B^2-4AC }. \]- If \(\Delta<0\), the line misses the circle.
- If \(\Delta=0\), the line is tangent to the circle.
- If \(\Delta>0\), the line crosses the circle in two points.
One algebraic quantity classifies the geometric relationship.
Example: Horizontal Line through a Circle
Consider the circle
\[ x^2+y^2=25 \]and the horizontal line
\[ y=3. \]Substitute:
\[ x^2+3^2=25. \]Then
\[ x^2=16, \]so
\[ \boxed{ x=\pm4 }. \]The two intersection points are
\[ \boxed{ (-4,3) \qquad\text{and}\qquad (4,3) }. \]Tangency as a Repeated Solution
A tangent line touches a circle at exactly one point.
Algebraically, the corresponding quadratic has a repeated root:
\[ \boxed{ \Delta=0 }. \]This is an important recurring connection: geometric tangency often appears algebraically as a repeated solution.
Segment-Circle Intersection
If the object is a segment rather than an infinite line, solve the same quadratic using
\[ X=P+t(Q-P), \]but retain only solutions satisfying
\[ \boxed{ 0\le t\le1 }. \]A supporting line may intersect a circle twice while the finite segment intersects once or not at all.
Circle-Circle Intersection
Consider two circles:
\[ \|X-C_1\|=r_1 \]and
\[ \|X-C_2\|=r_2. \]Let
\[ d=\|C_2-C_1\| \]be the distance between their centers.
The value of \(d\) relative to \(r_1\) and \(r_2\) determines the intersection type.
Classifying Two Circles by Center Distance
- If \(d>r_1+r_2\), the circles are separate.
- If \(d=r_1+r_2\), they are externally tangent.
- If \(|r_1-r_2|
- If \(d=|r_1-r_2|\) and \(d\ne0\), they are internally tangent.
- If \(0
- If \(d=0\) and \(r_1=r_2\), the circles coincide.
The coincident case contains infinitely many intersection points.
Constructing the Circle-Circle Intersection Points
Let
\[ \mathbf{e} = \frac{C_2-C_1}{d} \]be the unit vector from \(C_1\) to \(C_2\).
The distance from \(C_1\) to the chord midpoint along this direction is
\[ \boxed{ a= \frac{r_1^2-r_2^2+d^2}{2d} }. \]The half-chord length is
\[ \boxed{ h=\sqrt{r_1^2-a^2} }. \]Finishing the Circle-Circle Construction
The midpoint of the common chord is
\[ M=C_1+a\mathbf{e}. \]If
\[ \mathbf{e}=(e_x,e_y), \]choose a perpendicular unit vector
\[ \mathbf{n}=(-e_y,e_x). \]The two intersection points are
\[ \boxed{ X_1=M+h\mathbf{n} } \]and
\[ \boxed{ X_2=M-h\mathbf{n} }. \]When \(h=0\), the two formulas produce the same tangent point.
Curves Can Be Represented in Several Ways
A curve may be given explicitly:
\[ y=f(x). \]It may be implicit:
\[ F(x,y)=0. \]Or it may be parametric:
\[ C(t)= \bigl(x(t),y(t)\bigr). \]The best intersection method depends strongly on the representation.
Intersection of Two Explicit Curves
If
\[ y=f(x) \]and
\[ y=g(x), \]then intersection points occur where
\[ \boxed{ f(x)=g(x) }. \]Equivalently, define
\[ h(x)=f(x)-g(x) \]and solve
\[ \boxed{ h(x)=0 }. \]Curve intersection has become a root-finding problem.
Example: A Line and a Parabola
Find the intersections of
\[ y=x+2 \]and
\[ y=x^2. \]Set the expressions equal:
\[ x^2=x+2. \]Rearranging gives
\[ x^2-x-2=0. \]Factor:
\[ (x-2)(x+1)=0. \]Finishing the Line-Parabola Example
The \(x\)-coordinates are
\[ x=2 \]and
\[ x=-1. \]Substituting into \(y=x+2\) gives
\[ y=4 \]and
\[ y=1. \]Therefore, the intersections are
\[ \boxed{ (2,4) \qquad\text{and}\qquad (-1,1) }. \]Intersection of Parametric Curves
Suppose
\[ C_1(t)= \bigl(x_1(t),y_1(t)\bigr) \]and
\[ C_2(u)= \bigl(x_2(u),y_2(u)\bigr). \]An intersection satisfies
\[ \boxed{ x_1(t)=x_2(u) } \]and
\[ \boxed{ y_1(t)=y_2(u) }. \]This produces two equations in the two unknown parameters \(t\) and \(u\).
Different Parameters Can Describe the Same Point
At a parametric intersection, it is not generally necessary that
\[ t=u. \]The two curves may reach the same geometric point at different parameter values.
The correct condition is equality of positions:
\[ C_1(t)=C_2(u). \]Root Finding for General Curve Intersections
Many intersection equations cannot be solved conveniently with elementary algebra.
Then the task becomes numerical root finding.
Common methods include:
- bisection;
- Newton's method;
- secant methods;
- subdivision;
- hybrid methods that combine bracketing with faster local iteration.
These methods approximate the parameter or coordinate values at which the curves meet.
Bisection for an Intersection Equation
Suppose curve intersection has been reduced to
\[ h(x)=0. \]If
\[ h(a)h(b)<0 \]and \(h\) is continuous on \([a,b]\), then a root lies between \(a\) and \(b\).
Bisection repeatedly halves the interval and retains a subinterval that still brackets a sign change.
Newton's Method for an Intersection Equation
If \(h\) is differentiable and an initial estimate \(x_0\) is available, Newton's method uses
\[ \boxed{ x_{n+1} = x_n- \frac{h(x_n)}{h'(x_n)} }. \]Near a suitable simple root, this can converge very rapidly.
However, Newton's method is not guaranteed to converge from every starting point, and it requires special care when \(h'(x_n)\) is zero or very small.
Tangent Intersections Are Numerically Delicate
If two curves merely touch, the difference function
\[ h(x)=f(x)-g(x) \]may have a repeated root.
In such a case, \(h(x)\) may touch zero without changing sign.
Therefore, a sign-change search alone can miss tangential intersections.
Subdivision and Bounding Regions
A practical strategy for complex curves is to enclose pieces of each curve in simple bounding regions.
If two bounding regions do not overlap, the enclosed curve pieces cannot intersect.
If they do overlap, subdivide the curve pieces into smaller pieces and test again.
Repeated subdivision narrows the search to small regions that may contain intersections.
Broad Phase and Narrow Phase
Many geometric systems use two stages.
The broad phase uses inexpensive tests such as bounding boxes to eliminate pairs that clearly cannot intersect.
The narrow phase applies the more exact intersection test only to the surviving candidates.
This pattern is fundamental in collision detection, graphics, CAD, and spatial databases.
Candidate Generation and Verification
Intersection algorithms often have two conceptual stages:
- generate candidate intersection points or parameters;
- verify that each candidate satisfies the original geometric constraints.
For example, solving two supporting lines may produce a candidate point, while the parameter restrictions determine whether that point belongs to the actual segments.
Exact and Approximate Intersections
In symbolic mathematics, an intersection may be represented exactly:
\[ \left( \frac{16}{5}, \frac85 \right). \]In numerical software, the same point may be stored approximately:
\[ (3.2,\;1.6). \]The representation affects how equality, tangency, parallelism, and boundary membership should be tested.
Near-Parallel Lines
The line-line formulas divide by
\[ \mathbf{r}\times\mathbf{s}. \]If this quantity is extremely small, the lines are nearly parallel.
Small denominator values can amplify numerical error, so robust software should not treat every nonzero floating-point denominator as equally safe.
Using Tolerances Carefully
In approximate arithmetic, one may replace
\[ D=0 \]with a test such as
\[ |D|\le\varepsilon. \]But the appropriate \(\varepsilon\) depends on coordinate scale and the quantities being compared.
A tolerance is a numerical policy, not a mathematical identity.
Duplicate Intersections
A numerical or subdividing algorithm may discover the same geometric intersection more than once.
This commonly occurs near:
- shared endpoints;
- subdivision boundaries;
- tangent contacts;
- overlapping curve pieces.
A complete implementation may therefore need a deduplication step.
Intersection Multiplicity
Algebra can record more than the location of an intersection.
If
\[ h(x)=0 \]has a repeated root, the intersection has higher algebraic multiplicity.
For example,
\[ h(x)=(x-2)^2 \]has a double root at \(x=2\).
This often corresponds to tangential contact rather than an ordinary crossing.
Intersection versus Crossing
Two objects can intersect without crossing through one another.
A tangent line and a circle share one point, but the line does not pass through the circle at that point in the same way a secant does.
Similarly, two curves may touch and reverse relative position rather than crossing.
Computational systems often need to classify the type of contact, not just detect that contact occurred.
Intersection versus Overlap
A point intersection has zero geometric length.
An overlapping pair of collinear segments may share an entire interval of points.
Therefore, returning only a single point for every successful intersection can lose important information.
The output type should match the possible geometry.
Degenerate Inputs
Intersection algorithms must account for degenerate objects.
Examples include:
- a segment whose endpoints are identical;
- a line direction vector equal to zero;
- a circle with radius zero;
- two coincident lines;
- two coincident circles;
- curves whose parameter intervals collapse to a point.
These cases should be classified explicitly rather than allowed to create accidental division by zero.
A Zero-Length Segment Is a Point
If
\[ P=Q, \]then
\[ S(t)=P+t(Q-P) \]becomes
\[ S(t)=P. \]The segment has collapsed to one point.
Intersecting it with another object becomes a point-membership test.
Verification by Substitution
Once a candidate point \(X\) is found, substitute it into the defining equations whenever practical.
For a line-circle intersection, verify that
\[ X=P+t\mathbf{d} \]and
\[ \|X-C\|^2=r^2. \]Verification catches algebraic mistakes and invalid candidates introduced by transformations or numerical approximation.
Common Error: Solving the Supporting Lines but Ignoring Segment Bounds
A solution of
\[ P+t\mathbf{r}=Q+u\mathbf{s} \]proves that the supporting lines meet.
For segments, it is still necessary to check
\[ 0\le t\le1 \]and
\[ 0\le u\le1. \]Common Error: Treating Parallel as Automatically Disjoint
If
\[ \mathbf{r}\times\mathbf{s}=0, \]the lines are parallel in direction, but they may also be collinear.
The additional test
\[ (Q-P)\times\mathbf{r} \]distinguishes coincident support from distinct parallel lines.
Common Error: Using Only Bounding Boxes
Overlapping bounding boxes do not prove that the underlying objects intersect.
Bounding boxes are excellent rejection tests, but they generally provide only a necessary condition for intersection.
A more specific geometric test must follow.
Common Error: Missing Tangency with a Sign-Change Test
A root-finding scan that looks only for
\[ h(a)h(b)<0 \]can miss a repeated root because the function may touch zero and remain the same sign on both sides.
Tangent intersections require additional detection strategies.
Common Error: Returning One Point for an Overlap
Collinear segments can share an entire interval.
Coincident lines can share infinitely many points.
An intersection routine should distinguish a single-point result from an overlapping result when the application needs that information.
Common Error: Ignoring Numerical Scale
A fixed absolute tolerance may behave poorly when coordinates vary by many orders of magnitude.
Robust intersection code should consider:
- coordinate scale;
- relative error;
- near-parallel configurations;
- near-tangent configurations;
- whether exact predicates are required.
A Reliable Procedure for Two-Line Intersection
- Represent each line as a point plus a direction vector.
- Compute \(D=\mathbf{r}\times\mathbf{s}\).
- If \(D\ne0\), solve for \(t\) and \(u\).
- Construct the intersection point from either line.
- If \(D=0\), test whether the lines are collinear.
- Classify the result as unique, parallel-distinct, or coincident.
- Use scale-aware numerical comparisons when arithmetic is approximate.
A Reliable Procedure for Segment Intersection
- Reject pairs whose bounding boxes do not overlap.
- Compute orientation values or solve the supporting-line parameters.
- Handle ordinary crossings.
- Check endpoint-on-segment cases.
- Handle collinear overlap separately.
- Distinguish no intersection, one point, and overlapping segment.
- Verify numerical boundary cases carefully.
A Reliable Procedure for Line-Curve Intersection
- Choose a convenient representation of the line and curve.
- Substitute one representation into the other when possible.
- Reduce the problem to an equation in one parameter or coordinate.
- Solve exactly when practical.
- Otherwise use an appropriate numerical root-finding method.
- Retain only roots within any required parameter interval.
- Construct the corresponding points.
- Verify each candidate against the original geometry.
- Deduplicate repeated numerical detections when necessary.
Practice 1: Two Lines
Find the intersection of
\[ L_1(t)=(0,0)+t(1,2) \]and
\[ L_2(u)=(4,0)+u(-1,1). \]Practice 2: Parallel or Collinear?
Classify
\[ L_1(t)=(1,2)+t(2,4) \]and
\[ L_2(u)=(3,6)+u(1,2). \]Practice 3: Segment Parameters
Two supporting lines meet at
\[ t=\frac34, \qquad u=\frac54. \]Do the corresponding segments intersect at that point?
Practice 4: Point on Segment
Determine whether
\[ R=(3,3) \]lies on the segment from
\[ P=(1,1) \]to
\[ Q=(5,5). \]Practice 5: Line and Circle
Find the intersections of
\[ x^2+y^2=25 \]and
\[ y=4. \]Practice 6: Tangent Line
Determine how many points of intersection are shared by
\[ x^2+y^2=9 \]and
\[ y=3. \]Practice 7: Two Explicit Curves
Find the intersection points of
\[ y=x^2 \]and
\[ y=3x-2. \]Practice 8: Circle Classification
Two circles have radii
\[ r_1=5, \qquad r_2=3, \]and their centers are \(8\) units apart. Classify their intersection.
Practice 9: Collinear Overlap
On a common horizontal line, one segment spans
\[ x\in[1,6] \]and another spans
\[ x\in[4,9]. \]Find their overlap.
Practice 10: Why a Sign Change Can Fail
Explain why checking only for a sign change can miss the root of
\[ h(x)=(x-2)^2. \]Practice Answers
Practice 1
Here,
\[ P=(0,0),\quad Q=(4,0),\quad \mathbf{r}=(1,2),\quad \mathbf{s}=(-1,1). \] \[ \mathbf{r}\times\mathbf{s} = 1(1)-2(-1)=3. \] \[ Q-P=(4,0). \] \[ t= \frac{(4,0)\times(-1,1)}{3} = \frac43. \]Therefore,
\[ L_1\left(\frac43\right) = \left( \frac43, \frac83 \right). \] \[ \boxed{ \left( \frac43, \frac83 \right) }. \]Practice 2
The direction vectors are parallel because
\[ (2,4)\times(1,2)=4-4=0. \]Also,
\[ Q-P=(2,4), \]which is itself a multiple of \((2,4)\). Therefore, the lines are
\[ \boxed{\text{collinear}}. \]Practice 3
The first parameter satisfies
\[ 0\le\frac34\le1, \]but
\[ \frac54>1. \]Therefore,
\[ \boxed{\text{the segments do not intersect at that point}.} \]Practice 4
The points are collinear, and \(3\) lies between \(1\) and \(5\) in both coordinates.
\[ \boxed{R\text{ lies on segment }PQ.} \]Practice 5
Substitute \(y=4\):
\[ x^2+16=25. \] \[ x^2=9. \] \[ x=\pm3. \]Therefore,
\[ \boxed{ (-3,4) \qquad\text{and}\qquad (3,4) }. \]Practice 6
Substitute \(y=3\):
\[ x^2+9=9. \] \[ x^2=0. \] \[ x=0. \]There is one intersection:
\[ \boxed{(0,3)}. \]The line is tangent to the circle.
Practice 7
Set the equations equal:
\[ x^2=3x-2. \] \[ x^2-3x+2=0. \] \[ (x-1)(x-2)=0. \]Thus \(x=1\) or \(x=2\). The corresponding \(y\)-values are \(1\) and \(4\).
\[ \boxed{ (1,1) \qquad\text{and}\qquad (2,4) }. \]Practice 8
Since
\[ d=r_1+r_2=5+3=8, \]the circles are
\[ \boxed{\text{externally tangent}}. \]They share exactly one point.
Practice 9
The overlap begins at
\[ \max(1,4)=4 \]and ends at
\[ \min(6,9)=6. \]Therefore, the shared interval is
\[ \boxed{[4,6]}. \]Practice 10
The function
\[ h(x)=(x-2)^2 \]is nonnegative on both sides of \(x=2\).
It reaches zero at \(x=2\) but does not change sign. Therefore, a search that detects roots only by sign changes can miss this repeated root.
What to Remember
Intersection algorithms solve the same basic problem in many different forms: find points that satisfy the conditions of two geometric objects at once.
- parametric lines convert intersection into parameter solving;
- cross products classify parallelism and support efficient line-line formulas;
- segment intersection adds parameter or boundary restrictions;
- orientation predicates provide a powerful segment-crossing test;
- collinear overlap must be handled separately from ordinary crossings;
- line-circle intersection reduces to a quadratic equation;
- the discriminant distinguishes no contact, tangency, and two crossings;
- curve intersection often reduces to root finding;
- bounding regions provide efficient early rejection;
- candidate points should be verified against the original geometry;
- near-parallel, tangent, overlapping, and degenerate cases require special care.
The computational habit is to separate geometry into representation, candidate generation, classification, and verification.
Where We Go Next
Line and curve intersection asks whether two geometric objects share a point. The next lesson reverses the perspective and asks whether a single point belongs to a larger bounded region.
Point-in-Region Tests develops methods for deciding whether a point lies inside, outside, or on the boundary of polygons and other spatial regions.