GetIT1 and GetOT1 will get the tangent from different HCPs. That is because an HPatch is the result of HSpline crossing and so the InTangent is from one of the crossing HSplines while the OutTangent is from the other crossing HSpline. The CP and their tangents may be viewed like this:
CP-Tangents.gif
Relations between In tangents, Out tangents and CPs
The functions GetITx() and GetOTx() are usefull for the computing of normals to the CPs in a patch. it1^ot1 (that is the cross product between it1 and ot1) will generate the surface normal for the cp1 on the patch. However, just crossing the in & out tangents of the splines that make the patch will produce some normals facing in and some out.
There aren't actually real "first" CP but we need to start somewhere.