Collision between two lines
I ahve two lines... how do I tell where they've collided, when they will collide and/or how much they've collided by?
Use 3d rays.
For 2 rays defined parametrically as O+t*D = P, where O is the origin, D is a direction, and t is a distance or time along the direction from the origin.
The intersection of the 2 rays is:
t1 = (((o2-o1) x d2) . (d1 x d2)) / (magnitude (d1 x d2))^2
where . is the dot product of 2 vectors, and x is the cross product. ^2 means squared.
Hope this was helpful!
[edit]
BTW: if the 2 rays don't intersect, the t return will yield the closest point on the one ray to the other.
[/edit]
For 2 rays defined parametrically as O+t*D = P, where O is the origin, D is a direction, and t is a distance or time along the direction from the origin.
The intersection of the 2 rays is:
t1 = (((o2-o1) x d2) . (d1 x d2)) / (magnitude (d1 x d2))^2
where . is the dot product of 2 vectors, and x is the cross product. ^2 means squared.
Hope this was helpful!
[edit]
BTW: if the 2 rays don't intersect, the t return will yield the closest point on the one ray to the other.
[/edit]
http://www.flipcode.com/geometry/gprimer2_issue02.shtml
(V) Intersection of Two Lines
Should be what you are looking for ;)
(V) Intersection of Two Lines
Should be what you are looking for ;)
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement