Possible Duplicate:
Problem with defining shortcuts for TikZ matrices.
I'm getting a the following error using subfloat and tikz matrix together: ERROR: Package pgfbasematrix Error: Single ampersand used with wrong catcode. Commenting out the subfloat lines results in no errors. Thanks in advance for any suggestions.
\documentclass{article}
%% For drawing
\usepackage{tikz}
\usetikzlibrary{arrows,positioning}
%% For subfloat
\usepackage{subfig}
%% Drawing
\def\linkaba{stealth'-stealth'}
\def\linkab{-stealth'}
\def\linkba{stealth'-}
\newcommand{\directedtriangle}[4]{
\node (A) at (0,0) [nd] {}; % Lower Left
\node (B) at +(1,0) [nd] {}; % Lower Right
\node (C) at +(0.5,0.75) [nd] {}; % Top
\draw[#1] (A)--(B);
\draw[#2] (A)--(C);
\draw[#3] (B)--(C);
\node [below] at +(0.5,-0.1) {\footnotesize (#4)};
}
\newcommand{\directedwedge}[3]{
\node (A) at (0,0) [nd] {}; % Lower Left
\node (B) at +(1,0) [nd] {}; % Lower Right
\node (C) at +(0.5,0.75) [nd] {}; % Top
\draw[#1] (A)--(C);
\draw[#2] (B)--(C);
\node [below] at +(0.5,-0.1) {\footnotesize (#3)};
}
\begin{document}
\begin{figure}[t]
\subfloat[Wedges]{
\begin{tikzpicture}[nd/.style={circle,draw,fill=black!50,inner sep=2pt}]
\matrix[column sep=0.4cm, row sep=0cm]
{
\directedwedge{\linkba}{\linkba}{i} &
\directedwedge{\linkab}{\linkba}{ii} &
\directedwedge{\linkab}{\linkab}{iii} \\
\directedwedge{\linkaba}{\linkab}{iv} &
\directedwedge{\linkaba}{\linkba}{v} &
\directedwedge{\linkaba}{\linkaba}{vi} \\
};
\end{tikzpicture}}
\subfloat[Triangles]{
\begin{tikzpicture}[nd/.style={circle,draw,fill=black!50,inner sep=2pt}]
\matrix[column sep=0.4cm, row sep=0cm]
{
\directedtriangle{\linkab}{\linkba}{\linkba}{a} &
\directedtriangle{\linkab}{\linkba}{\linkab}{b} &
\directedtriangle{\linkaba}{\linkba}{\linkba}{c} &
\directedtriangle{\linkaba}{\linkab}{\linkba}{d} \\
\directedtriangle{\linkaba}{\linkab}{\linkab}{e} &
\directedtriangle{\linkaba}{\linkaba}{\linkba}{f} &
\directedtriangle{\linkaba}{\linkaba}{\linkaba}{g}\\
};
\end{tikzpicture}}
\vspace{-0.5cm}
\caption{All different directed wedges and triangles}
\label{fig:dwedge}
\end{figure}
\end{document}