First off: yes, everything you've said makes sense, and this is a very interesting question.
Let $Vel$ be the vector space of velocities. Examples of vectors in $Vel$ are "3 miles north per hour" and "4 miles west per hour".
What is the reciprocal of a velocity? It's easy to write such things down: "1/3 hours per mile north", "1/4 hours per mile west", and so forth. But what are they?
The mathematical concept of a dual vector space doesn't exactly answer your question, I think, but I feel like it comes close. Let's talk about what a dual vector space is and how it applies here.
If $V$ a vector space (any vector space), then the "dual" of $V$, denoted $V^*$, consists of all linear functions $V \to \mathbb{R}$. (A function $f : V \to \mathbb{R}$ is linear if for all vectors $x$ and $y$ and scalars $s$, $f(x + y) = f(x) + f(y)$ and $f(sx) = s\ f(x)$.)
(Of course, if the scalar field of $V$ is some other field $F$ instead of $\mathbb{R}$, then replace $\mathbb{R}$ with $F$ in the above definition.)
The definition of addition and multiplication for $V^*$ is probably what you would expect:
- Given elements $f$ and $g$ of $V^*$, their sum $f + g$ is defined as that function $h$ such that for all vectors $x$ in $V$, $h(x) = f(x) + g(x)$.
- Given an element $f$ of $V^*$, and a scalar $a$ in $\mathbb{R}$, the product $af$ is defined as that function $g$ such that for all vectors $x$ in $V$, $g(x) = a\ f(x)$.
Notice that applying a function in $V^*$ to an argument in $V$ behaves a lot like multiplication. The definition of addition in $V^*$ looks a lot like the distributive property, and the definition of scalar multiplication looks a lot like commutativity of multiplication.
Now, on to our example. What does the dual space $Vel^*$ look like? We could call its elements "dual-velocities", but what is a "dual-velocity"?
The boring answer is that a "dual-velocity" is a linear function $Vel \to \mathbb{R}$. But that's not very informative. So let me show you can example of a "dual-velocity".
I'm defining the "dual-velocity" $f$ as that function such that
$$f(\text{1 mile north per hour}) = 2,$$
$$f(\text{3 miles north per hour}) = 6,$$
$$f(\text{1 mile east per hour}) = 1,$$
$$f(\text{4 miles west per hour}) = -4,$$
$$f(\text{1 mile north and 2 miles west per hour}) = 0,$$
and so forth.
There's no single obvious way of interpreting this dual-velocity value, but we can certainly come up with some interpretations. It could represent the effect that wind has on a wind turbine: a faster wind in a given direction makes the turbine spin faster, but depending on the direction of the wind, the turbine might spin faster or slower, or not at all, or in the wrong direction. Or it could represent the amount that a wind helps or hinders an airplane flying in a particular direction.
Plotting dual-velocities
How can you plot a dual-velocity?
You can plot a dual-velocity on the same coordinate plane that you plot velocities on. But don't plot them the same way! Usually, you would plot a velocity as an arrow starting at the origin and ending at a point. But it doesn't make much sense to plot a dual-velocity the same way on the same coordinate plane.
A velocity is represented by a point on our coordinate plane. There's a set of velocities which our dual-velocity maps to 0. It happens that if you look at all these velocities on the coordinate plane, they form a straight line passing through the origin. (Unless the dual-velocity is the zero vector—see below.) So draw that line and write a 0 next to it. Likewise, there's another set of velocities which are mapped to 1, and this set is also a straight line. Draw that line and write a 1 next to it. Do the same for all of the integers. You'll end up with a bunch of equally spaced parallel lines, labeled with the integers.
The zero dual-velocity is the exception to the above. The zero dual-velocity maps all velocities to the number 0, so you'll have to think of another way to plot it.
A basis for $Vel^*$
Like all finite-dimensional vector spaces, the vector space $Vel$ (just velocities, not dual-velocities) has a finite basis. For every velocity $x$, there are scalars $a$ and $b$ such that
$$x = a (\text{1 mile north per hour}) + b (\text{1 mile east per hour}).$$
Of course, you can write this more concisely as $\langle a, b \rangle$.
The vector space $Vel^*$ has a finite basis, too. Let $N$ be the dual-velocity $N(\langle a, b \rangle) = a$, and let $E$ be the dual-velocity $E(\langle a, b \rangle) = b$. Then any dual-velocity can be written in the form $cN + dE$, or, alternatively, as $[c, d]$.
Out of steam
This answer is going on a lot longer than I wanted it to, so I'm going to leave off with a couple of things to think about.
- What units can dual-velocities be measured in? As I mentioned above, applying a dual vector to a vector from the original space acts a lot like multiplication. This means that you can "multiply" a dual-velocity with a velocity to end up with a scalar. Since velocity has units of miles per hour, it probably makes sense to imagine dual-velocities as having units of hours per mile.
- Given a nonzero velocity, there are lots of different dual-velocities that you can "multiply" with that velocity to get 1. However, out of all of these dual-velocities, one of them will have the smallest magnitude (and that magnitude will be the reciprocal of the magnitude of the velocity). You could define the "reciprocal" of a velocity as referring to this dual-velocity. Find a formula for this "reciprocal" and see if it matches what you've come up with already.
You made a few errors in transcribing the standard formula
$$\arccos\left(\frac{x_1x_2+y_1y_2+z_1z_2}{\sqrt{x_1^2+y_1^2+z_1^2}\sqrt{x_2^2+y_2^2+z_2^2}}\right). $$
But your suspicion that it was not applicable is correct.
This is the formula for the angle between the vectors
$(x_1,y_1,z_1)$ and $(x_2,y_2,z_2)$,
that is, it tells you, if you were sitting at the point $(0,0,0)$
watching the projectile through a telescope,
how much you would need to turn the telescope in order to keep it pointed
at the projectile.
If the positions $(x_1,y_1,z_1)$ and $(x_2,y_2,z_2)$
are not too close to $(0,0,0)$ and are observed very close in time,
then naturally you will not have to turn the telescope very much in order to track the projectile.
To find the direction of travel your projectile, a more useful vector would be the vector from one observed point to the next observed point,
$$ (x_2 - x_1, y_2 - y_1, z_2 - z_1). $$
This vector is the sum of a horizontal vector $(x_2 - x_1, y_2 - y_1, 0)$
and a vertical vector $(0,0, z_2 - z_1)$.
The vector sum can be drawn graphically as a right triangle with those two vectors as the legs and the vector $(x_2 - x_1, y_2 - y_1, z_2 - z_1)$ as the hypotenuse.
The length of the hypotenuse is therefore
$$ \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2 + (z_2 - z_1)^2} $$
and the length of the vertical leg is $z_2 - z_1$, so by simple trigonometry
the angle from straight-up vertical is
$$ \arccos\left(\frac{z_2 - z_1}
{\sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2 + (z_2 - z_1)^2}}\right) $$
and the angle from the horizontal is
$$ \arcsin\left(\frac{z_2 - z_1}
{\sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2 + (z_2 - z_1)^2}}\right). $$
But since the projectile travels in a curve rather than a straight line,
the angle of this vector is only a kind of "average" angle of travel over the arc from the first point to the second point, not the actual angle at either endpoint.
Assuming a simple parabolic arc for the path of the projectile,
the angle you get from the formulas above is the exact angle of travel at the point
$$\left(\frac{x_1+x_2}{2}, \frac{y_1+y_2}{2}, \frac{z_1+z_2}{2} + \zeta\right)$$
for some $\zeta> 0,$ that is, at some point whose horizontal coordinates are midway between the two observed points, but whose vertical position is somewhere above the line connecting the two points.
How far above the line that position will be is a function of the acceleration of gravity and of how much time passed between the observations.
If you know the acceleration of gravity and the time that passed between observations then you can work backward from the angle measured in the above formulas to the angle at the point $(x_1,y_1,z_1)$.
But a simpler method for a parabolic arc is that if you want the direction of travel at a particular time $t$, don't use the position at time $t$; instead, use the positions at time $t - \delta$ and at $t + \delta$,
because then the point at which the slope of the arc matches the slope of the vector will be the point at time $t.$
For the horizontal direction, you have the right idea about looking at the points $(x_1,y_1)$ and $(x_2,y_2)$ in the $x,y$ plane.
It's also true that the slope of the line between those points is not an angle in the usual meaning of the word "angle."
In particular, I think you would want to distinguish a trajectory that passes through $(x_1,y_1)$ first and later through $(x_2,y_2)$ from a trajectory that passes through $(x_2,y_2)$ first and then $(x_1,y_1)$;
but the formula $(y_2 - y_1)/(x_2 - x_1)$ gives the same answer in both cases.
For the horizontal direction I suggest you consider the direction of the vector $(x_2 - x_1, y_2 - y_1)$ in the $x,y$ plane.
There is some discussion of the angular direction of this vector in
How do we really get the angle of a vector from the components?.
To summarize, the angle is essentially the result of the inverse tangent
(aka arc tangent) function.
Best Answer
The midway $M$ point between $P=(x_1,y_1,z_1)$ and $Q=(x_2,y_2,z_2)$ is given by $$ M=\Big(\frac{x_1+x_2}{2},\frac{y_1+y_2}{2},\frac{z_1+z_2}{2} \Big). $$
EDIT:
What is happening here is actually you calculate $$ (x_1,y_1,z_1)+t\big((x_2,y_2,z_2)- (x_1,y_1,z_1)\big) $$
where we chose $t=\frac{1}{2}$ above, you could pick anything you like.
EDIT:
Coordinates are given by
$$ \Big((1-t)x_1+tx_2,(1-t)y_1+ty_2,(1-t)z_1+tz_2 \Big) $$