How to add vertical space struts after hline?

 \hline
 \noalign{\vskip 3in}    

puts some space after the line.


The following is not a direct answer to your question but, instead, a suggestion to consider taking a different and (in my view) ultimately much simpler approach to solving your problem.

Like you do now, I also used to place struts above and below various \hline instructions to improve the overall look of a tabular (or tabular*, supertabular, etc.) environment. I think I first started using struts in this fashion after reading an article by Claudio Beccari entitled "Correct spacing for tables and arrays," published in TeX and TUG News, Vol 2, No 3, 1993. (This article is available online; see pp. 10-11 in, e.g., http://mirror.utexas.edu/ctan/info/digests/ttn/ttn2n3.pdf. I think it's still well worth a read.)

Then, just a few years ago, I "discovered" the booktabs package, which takes the opposite approach to solving the problem of obtaining proper spacing around horizontal lines in tables. Instead of changing the depths/heights (by inserting the appropriate struts) of the lines of text immediately before/after an \hline, the package provides the commands \toprule, \bottomrule, \midrule, and \cmidrule: these automatically insert an appropriate amount of vertical whitespace below and/or above the respective horizontal lines. (In addition, these horizontal lines tend to look much more professional because they don't all have the same width, but that's a separate issue.)

Suppose, then, that you need to create an extra-long table that contains three columns, and suppose that you're going to use the xtabular environment -- made available by loading the xtab package -- to create this table. You could then set up something like this:

\tablefirsthead{%  % for table header on first page
\toprule
  Col 1 header & Col 2 header & Col 3 header \\
\midrule
}

\tablehead{%     % for table headers except on first page
\multicolumn{3}{l}{\small\emph{Continued from previous page}} \\
\midrule[\heavyrulewidth]  % line with same width as \toprule but with more spacing
  Col 1 header & Col 2 header & Col 3 header \\
\midrule
}

\tabletail{%    % for table tails except on very last page
\midrule[\heavyrulewidth]  %line with same width as \bottomrule but with more spacing
\multicolumn{3}{r}{\small\emph{Continued on next page}} \\
}

\tablelasttail{\bottomrule}  % table tail on very last page

\tablecaption{A very long table} \label{tab:verylong}
\begin{xtabular}{lcc}
% various lines
\midrule
% various lines
\midrule
% various lines
% ...
\end{xtabular}

What makes this approach, in my view, so appealing is that you've delegated to LaTeX and, in particular, the macros of booktabs package all work related to setting the appropriate vertical whitespace around the various horizontal lines. No need for you (the author) to figure out where to insert struts.