public double IntersectTraverse(Basin3 otherBasin)
        {
            var otherQtraverseProjection = otherBasin.Q3.ProjectOn(TraverseCalm);
            var Qt = otherQtraverseProjection.ToVector3D();

            Lambda_meridian = Qt.AngleTo(Q3.ToVector3D()).Radians;
            return(Triangles.SinusesTheorem(
                       Math.PI / 2 + Delta_g_traverse,
                       r,
                       Lambda_meridian)
                   -
                   //r;
                   otherBasin.r); //there's deformation
            //Qt.Length;
        }