
The point hasn't truly been transformed to screenspace until you have divided the other coordinates by W. If you have multiplied by the modelviewprojection matrix and not divided yet, the point is in a wierd sort of space called 'clip space', which is shaped like a pyramid.
I'm not sure why you would want to manipulate vectors in this space, but if you do, you can probably do it by multiplying your desired vector by the W of the vector you're adding it to. So (X, Y, Z, W) would become (X + 1.0W, Y, Z, W). Note that when you later divide by W, to map it into screen space, this will become (X/W + 1.0, Y/W, Z/W, 1) which is just the same as adding your desired vector directly in screen space.
