In the FSX SDK (Simulation Variables) I read:
EYEPOINT POSITION The eyepoint position relative to the reference datum position for the aircraft.
STRUCT EYEPOINT DYNAMIC OFFSET A variable offset away from the EYEPOINT POSITION
So we can get the actual eyepoint position?
No, we can't. Not with the SDK, at least. The EYEPOINT POSITION variable it's only the *initial* position, as specified in the aircraf.cfg. It doesn't update if the eyepoint is changed with keys and/or TrackIR. So, it's only correct the moment the eyepoint is reset to the default starting position for the selected airplane.
The STRUCT EYEPOINT DYNAMIC OFFSET, while looking promising with that "dynamic" term, is just the small offset that is added by FSX at runtime to simulate the "wobbling" effect due to head movement/acceleration, but it doesn't account for a changed eyepoint position.
So, ideally, a third variable should be needed, which the SDK doesn't provide.
BUTI've made some research on this, and yes, by reverse engineering a little bit FSX, IT IS possible to get the actual eyepoint position, with a direct memory access, which is of course only allowed with an in-process .DLL module or a C++ Gauge.
In fact, our Addon Manager already supports this, because it's needed for some features we are going to use in future products, that require to know the actual eye position. A C++ gauge might be able to call this function to get that information, which can be used to create a collimated HUD, without having to modify the airplane model.
For XML gauge programmers, it's be possible for the Addon Manager to "publish" custom L: variables that XML can read. I don't know much of XML gauge programming but, if it's possible to draw lines with a starting position offset by an amount that is specified by an L: variable, it might be possible to do this with XML as well.
The only downside of this would be that any gauge using this method, will need to have the Addon Manager installed but, it wouldn't be a problem for us adding this feature for free, as long the resulting gauge is used in a free product. The Addon Manager itself is already freely downlodable and, many already have it installed, if they have a least one FSDT or Cloud9 product.
Of course, if any 3rd party developer would like to use this feature in a commercial project, we'll be more than willing to license the Addon Manager to them, as we did for other devs that use it (like Qualitywings, for example)