   Line/plane collision math aggrivation?
  I'm pulling my hair out trying to figure out what I'm doing wrong here.My line is defined by two points:(0,0,0)(0.078, 0.011, 1.0).My plane is defined by the following equation: -0.046x - 0.999y + 0.006z - 3.663 = 0.If I'm "facing" the direction going from my first line point (0,0,0) to my 2nd line point, I want to know if my line intersects my plane "in front" of me, or "behind" me.Here is my current solution:1.  Solve for two points on the plane by plugging in to the equation.  To handle things like axis aligned planes, I simply find the first non-zero coefficient (in this case -0.046) and solve for that coefficient twice, once by plugging in all 0's for the other terms, and once by plugging in 1's.  In this case, that gets me the following two points:(-79.61, 0, 0)(-101.19, 1, 1)2.  I can use these two points to find a planar vector, and then I use the cross product between that planar vector and the normal to get a third point.  Solving myself, I get:(1.005, 0.086, 21.603)Although the library that my C# code is using returns the negated version (-1.005, -0.086, -21.603).  These should both be coplanar vectors though, so I figure there is no error here.3.  Adding this new coplanar vector to the first of the two planar points I generated by plugging in gives me the final 3 points that define my plane:(-79.61, 0, 0)(-101.19, 1, 1)(-80.61, -0.086, -21.60)4.  Now, I can parameterize the line using my two points (lets call them A and B with A being the point at the origin):A + (B-A)tI can then parameterize my plane using the three points (lets call them p0, p1, and p2):p0 + (p1-p0)u + (p2-p0)vI can set these two equations equal to eachother, and then solve for t (basically using the technique described here: http://en.wikipedia.org/wiki/Line-plane_intersection).If the intersection is "in front" of me, then t should solve to be positive.  The problem is, whenever I solve for t, both by hand and with code, I get approx. -433, which would indicate that the point is behind me.  Looking at the plane that the equation creates though, and given the direction of my facing vector, I don't think the intersection is actually behind me.  My facing vector is generally going along the positive z axis.  Plugging in larger and large values of z, it looks like the plane is moving closer to colliding with my line, rather than further...I'm running this code on a large number of lines and planes, and I can see that some simple examples are working out fine.  I can't for the life of me figure out why these values (along with many others) aren't working out properly :(.   
  It looks like the linked article happens to describe the parametric form first, but what you really want is the algebraic form, which is described later in the article. Using this latter form will allow you skip all of the extra work you're doing to build up a basis for the plane, and instead work directly with the plane equation (in one form or another) and the line equation.   ;  Even using the algebraic form, I'm getting the same -433 value for t.My facing vector is pretty close to being (0,0,1)So, lets look at how plane's Y values trend as we move forward along the z axis:plugging in x = 0, z = 0: (0, -3.67, 0)plugging in x = 0, z = 100: (0, -3.066, 100)and how about the X values?plugging in y = 0, z = 0: (-79.63, 0, 0)plugging in y = 0, z = 100: (-66.58, 0, 100)In both cases, as we move Z outward, our X and Y values are coming closer to zero, which to me indicates that they are on a collision path with the line defined by our facing vector as we go in the positive z direction (which is the same as a positive t value).I can't seem to grasp why my intuition isn't working out with the math.   