All pastes #637604 Raw Edit

Unnamed

public text v1 · immutable
#637604 ·published 2007-07-29 01:39 UTC
rendered paste body

hp = his position
mp = my position
md = my direction (velocity)
hd = his direction (velocity)
t = time


pythag to find line length:

t^3 = (hpx + hdx*t - mpx - mdx*t)(hpy + hdy*t -mpy - mdy*t)(hpz + hdz*t -mpz - mdz*t)


(hpx + hdx*t - mpx - mdx*t)(hpy + hdy*t -mpy - mdy*t)

add all these up

      	+hpy		+hdy*t		-mpy		-mdy*t
+hpx  ) hpx*hpy 	+hpx*hdy*t	-hpx*mpy	-hpx*mdy*t
+hdx*t) hdx*t*hpy	+hdx*t*hdy*t	-hdx*t*mpy	-hdx*t*mdy*t
-mpx  ) -mpx*hpy	-mpx*hdy*t	+mpx*mpy	+mpx*mdy*t
-mdx*t) -mdx*t*hpy	-mdx*t*hdy*t	+mdx*t*mpy	+mdx*t*mdy*t



xy=
+mdx*mdy*t2 - hdx*mdy*t2 + hdx*hdy*t2 - mdx*hdy*t2
+hpx*hdy*t - hpx*mdy*t + hdx*hpy*t - hdx*mpy*t + mpx*mdy*t - mpx*hdy*t - mdx*hpy*t + mdx*mpy*t
+hpx*hpy - hpx*mpy -mpx*hpy + mpx*mpy



store all the crap away as factors of t:

xy=
  t2(mdx*mdy - hdx*mdy + hdx*hdy - mdx*hdy)
+ t(hpx*hdy - hpx*mdy + hdx*hpy - hdx*mpy + mpx*mdy - mpx*hdy - mdx*hpy + mdx*mpy)
+ 1(hpx*hpy - hpx*mpy -mpx*hpy + mpx*mpy)


known1 = k1 = mdx*mdy - hdx*mdy + hdx*hdy - mdx*hdy
known2 = k2 = hpx*hdy - hpx*mdy + hdx*hpy - hdx*mpy + mpx*mdy - mpx*hdy - mdx*hpy + mdx*mpy
knonw3 = k3 = hpx*hpy - hpx*mpy -mpx*hpy + mpx*mpy


ok... same again for the z axis:

(k1*t^2 + k2*t + k3)(hpz + hdz*t -mpz - mdz*t)

add em up

	k1*t^2 		+k2*t 		+k3
---------------------------------------------------------------
+hpz  ) hpz*k1*t^2 	+hpz*+k2*t 	+hpz*k3
+hdz*t) hdz*k1*t^3 	+hdz*k2*t2 	+hdz+k3*t
-mpz  )-mpz*k1*t^2 	-mpz*k2*t 	-mpz*k3
-mdz*t)-mdz*k1*t^3 	-mdz*k2*t^2 	-mdz*k3*t


+hdz*k1*t^3 	-mdz*k1*t^3
+hdz*k2*t^2	+hpz*k1*t^2 	-mdz*k2*t^2		-mpz*k1*t^2
+hpz*+k2*t 	+hdz+k3*t	-mpz*k2*t -mdz*k3*t
+hpz*k3		-mpz*k3


store as factors of t

t^3 = 

  t^3(+hdz*k1 	-mdz*k1				)
+ t^2(+hdz*k2	+hpz*k1 -mdz*k2*t^2	-mpz*k1	)
+   t(+hpz*+k2 	+hdz+k3	-mpz*k2*t	-mdz*k3	)
+   1(+hpz*k3	-mpz*k3				)





k4  = +hdz*k1 	-mdz*k1
k5  = +hdz*k2	+hpz*k1 	-mdz*k2		-mpz*k1
k6  = +hpz*+k2 	+hdz+k3	-mpz*k2 -mdz*k3
k7  = +hpz*k3	-mpz*k3



YEY! 

t^3 = k4*t^3 + k5*t^2 + k6*t + k7

ao, just solve for t and we have time.. :o