|


Ball Bouncing off a Line SegmentDate: 05/04/2001 at 08:53:23 From: Robert Dick Subject: Lines and points I don't know if this is really a line intersection question or if I'm just overcomplicating the issue, but if you take an arbitrary line on a 2D plane, e.g. x1y1 - x2y2, then take a point that moves about the plane, say pxpy, can you tell if this point has crossed the line at any time? I'm writing a computer simulation that shows a ball deflecting off a line segment, and I just can't get to the math behind it all. Another thing is that when the ball crosses the line, it may not land exactly on it. Can I compensate for this? Help is greatly appreciated. Robert
Date: 05/04/2001 at 12:48:02
From: Doctor Peterson
Subject: Re: Lines and points
Hi, Robert.
The best way to work with this kind of situation is with vectors, so
you will want to find a good book that covers vectors in order to be
able to solve such problems more easily. Many computer graphics books
include a section on this topic.
Let's say you have a line defined by points A (x1,y1) and B (x2,y2),
and a point P (px,py) that moves around. You can tell whether it has
crossed the line by taking the cross product of the vectors AB and AP
each time you move it. If the sign of this product changes (or if it
is zero, meaning that P is exactly on line AB), you know P has crossed
over.
The vectors AB and AP are (x2-x1,y2-y1) and (px-x1,py-y1)
respectively, and their cross product is
(x2-x1)(py-y1) - (y2-y1)(px-x1)
(Technically, the cross product is a vector in three dimensions, but
this gives you its length, which is what you need to use here.)
This can also be expressed in terms of determinants. The following
page from our FAQ includes formulas for the signed area of a triangle,
which is positive if the vertices are listed in a counterclockwise
direction and negative otherwise (see if you can see how that's
relevant here), and for determining whether two line segments
intersect (which is what you want if it is important whether point P
crosses the SEGMENT AB rather than just the line AB):
Analytic Geometry Formulas - Ask Dr. Math FAQ
http://mathforum.org/dr.math/faq/formulas/faq.analygeom_2.html
(click on Two dimensions: Lines).
- Doctor Peterson, The Math Forum
http://mathforum.org/dr.math/
|
Search the Dr. Math Library: |
[Privacy Policy] [Terms of Use]


Ask Dr. MathTM
© 1994-2013 The Math Forum
http://mathforum.org/dr.math/