Get Position in Texture outputs where a render point is in the scene at the moment it's used. So it will use what's been set with Compute Terrain, Texture Coords from XYZ.
Get Position returns where the render point is when everything has been worked out through your node chain. So it will account for all displacements and modifications you've made, including things like Fake Stones. Even if those are used after you've called a Get Position node.
Dot Product multiplies the component parts of two inputs together and then adds the result. It's often used to find how similar two normalised vectors are.
So if you have a vector input of (1,0,0) and input 2 (1,0,0). The vectors are the same in this case, so the output of Dot Product will give you 1.
(1 x 1) +(0 x 0) + (0 x 0) = 1.
If the vectors are pointing in opposite directions, the output will be -1.
(1 x -1) + (0 x 0) + (0 x 0) = -1.