\documentclass[margin=1cm,tikz]{standalone}
\usepackage{tikz-3dplot}
\makeatletter
\pgfmathsetmacro{\@R@aa}{1}\pgfmathsetmacro{\@R@ab}{0}\pgfmathsetmacro{\@R@ac}{0}
\pgfmathsetmacro{\@R@ba}{0}\pgfmathsetmacro{\@R@bb}{1}\pgfmathsetmacro{\@R@bc}{0}
\pgfmathsetmacro{\@R@ca}{0}\pgfmathsetmacro{\@R@cb}{0}\pgfmathsetmacro{\@R@cc}{1}
\tikzset{
add rotation/.code args={around #1 with #2}{
\ifnum`x=`#1
\pgfmathsetmacro{\@R@ab@t}{\@R@ab * cos(#2) + \@R@ac * sin(#2)}
\pgfmathsetmacro{\@R@bb@t}{\@R@bb * cos(#2) + \@R@bc * sin(#2)}
\pgfmathsetmacro{\@R@cb@t}{\@R@cb * cos(#2) + \@R@cc * sin(#2)}
\pgfmathsetmacro{\@R@ac@t}{\@R@ac * cos(#2) - \@R@ab * sin(#2)}
\pgfmathsetmacro{\@R@bc@t}{\@R@bc * cos(#2) - \@R@bb * sin(#2)}
\pgfmathsetmacro{\@R@cc@t}{\@R@cc * cos(#2) - \@R@cb * sin(#2)}
\pgfmathsetmacro{\@R@ab}{\@R@ab@t}
\pgfmathsetmacro{\@R@bb}{\@R@bb@t}
\pgfmathsetmacro{\@R@cb}{\@R@cb@t}
\pgfmathsetmacro{\@R@ac}{\@R@ac@t}
\pgfmathsetmacro{\@R@bc}{\@R@bc@t}
\pgfmathsetmacro{\@R@cc}{\@R@cc@t}
\fi
\ifnum`y=`#1
\pgfmathsetmacro{\@R@aa@t}{\@R@aa * cos(#2) - \@R@ac * sin(#2)}
\pgfmathsetmacro{\@R@ba@t}{\@R@ba * cos(#2) - \@R@bc * sin(#2)}
\pgfmathsetmacro{\@R@ca@t}{\@R@ca * cos(#2) - \@R@cc * sin(#2)}
\pgfmathsetmacro{\@R@ac@t}{\@R@ac * cos(#2) + \@R@aa * sin(#2)}
\pgfmathsetmacro{\@R@bc@t}{\@R@bc * cos(#2) + \@R@ba * sin(#2)}
\pgfmathsetmacro{\@R@cc@t}{\@R@cc * cos(#2) + \@R@ca * sin(#2)}
\pgfmathsetmacro{\@R@aa}{\@R@aa@t}
\pgfmathsetmacro{\@R@ba}{\@R@ba@t}
\pgfmathsetmacro{\@R@ca}{\@R@ca@t}
\pgfmathsetmacro{\@R@ac}{\@R@ac@t}
\pgfmathsetmacro{\@R@bc}{\@R@bc@t}
\pgfmathsetmacro{\@R@cc}{\@R@cc@t}
\fi
\ifnum`z=`#1
\pgfmathsetmacro{\@R@aa@t}{\@R@aa * cos(#2) + \@R@ab * sin(#2)}
\pgfmathsetmacro{\@R@ba@t}{\@R@ba * cos(#2) + \@R@bb * sin(#2)}
\pgfmathsetmacro{\@R@ca@t}{\@R@ca * cos(#2) + \@R@cb * sin(#2)}
\pgfmathsetmacro{\@R@ab@t}{\@R@ab * cos(#2) - \@R@aa * sin(#2)}
\pgfmathsetmacro{\@R@bb@t}{\@R@bb * cos(#2) - \@R@ba * sin(#2)}
\pgfmathsetmacro{\@R@cb@t}{\@R@cb * cos(#2) - \@R@ca * sin(#2)}
\pgfmathsetmacro{\@R@aa}{\@R@aa@t}
\pgfmathsetmacro{\@R@ba}{\@R@ba@t}
\pgfmathsetmacro{\@R@ca}{\@R@ca@t}
\pgfmathsetmacro{\@R@ab}{\@R@ab@t}
\pgfmathsetmacro{\@R@bb}{\@R@bb@t}
\pgfmathsetmacro{\@R@cb}{\@R@cb@t}
\fi
\renewcommand{\tdplotcalctransformrotmain}{
\pgfmathsetmacro{\raaeul}{\@R@aa}
\pgfmathsetmacro{\rabeul}{\@R@ab}
\pgfmathsetmacro{\raceul}{\@R@ac}
\pgfmathsetmacro{\rbaeul}{\@R@ba}
\pgfmathsetmacro{\rbbeul}{\@R@bb}
\pgfmathsetmacro{\rbceul}{\@R@bc}
\pgfmathsetmacro{\rcaeul}{\@R@ca}
\pgfmathsetmacro{\rcbeul}{\@R@cb}
\pgfmathsetmacro{\rcceul}{\@R@cc}
}
\tdplotsetrotatedcoords{0}{0}{0}
},
}
\makeatother
\begin{document}
\tdplotsetmaincoords{70}{110}
\foreach \rotangle in {0,10,...,350}{
\begin{tikzpicture}
\path (-2,3.5) rectangle (12.5,-10);
\begin{scope}[tdplot_main_coords,scale=2]
\begin{scope}
\draw[thick,->] (0,0,0) -- (2,0,0) node[anchor=north east]{$x$};
\draw[thick,->] (0,0,0) -- (0,2,0) node[anchor=north west]{$y$};
\draw[thick,->] (0,0,0) -- (0,0,1.5) node[anchor=south]{$z$};
\end{scope}
\draw[fill=green,opacity=0.5] (1.5,0,0) --(0.3,0.4,0) -- (0.3,-0.4,0) -- cycle;
\draw[fill=yellow,opacity=0.5] (0.3,0,0) -- (0.6,0,0) -- (0.3,0,0.2) -- cycle;
\end{scope}
\begin{scope}[xshift=8cm,tdplot_main_coords,scale=2]
\begin{scope}
\draw[thick,->] (0,0,0) -- (2,0,0) node[anchor=north east]{$x$};
\draw[thick,->] (0,0,0) -- (0,2,0) node[anchor=north west]{$y$};
\draw[thick,->] (0,0,0) -- (0,0,1.5) node[anchor=south]{$z$};
\end{scope}
\begin{scope}[add rotation=around z with \rotangle,tdplot_rotated_coords]
\draw[thick,color=blue,->] (0,0,0) -- (1.7,0,0) node[anchor=north]{$x'$};
\draw[thick,color=blue,->] (0,0,0) -- (0,1.7,0) node[anchor=west]{$y'$};
\draw[thick,color=blue,->] (0,0,0) -- (0,0,1.2) node[anchor=south]{$z'$};
\draw[fill=green,opacity=0.5] (1.5,0,0) --(0.3,0.4,0) -- (0.3,-0.4,0) -- cycle;
\draw[fill=yellow,opacity=0.5] (0.3,0,0) -- (0.6,0,0) -- (0.3,0,0.2) -- cycle;
\end{scope}
\end{scope}
\begin{scope}[yshift=-6cm,tdplot_main_coords,scale=2]
\begin{scope}
\draw[thick,->] (0,0,0) -- (2,0,0) node[anchor=north east]{$x$};
\draw[thick,->] (0,0,0) -- (0,2,0) node[anchor=north west]{$y$};
\draw[thick,->] (0,0,0) -- (0,0,1.5) node[anchor=south]{$z$};
\end{scope}
\begin{scope}[add rotation=around z with 30,add rotation=around y with \rotangle,tdplot_rotated_coords]
\draw[thick,color=blue,->] (0,0,0) -- (1.7,0,0) node[anchor=north]{$x'$};
\draw[thick,color=blue,->] (0,0,0) -- (0,1.7,0) node[anchor=west]{$y'$};
\draw[thick,color=blue,->] (0,0,0) -- (0,0,1.2) node[anchor=south]{$z'$};
\draw[fill=green,opacity=0.5] (1.5,0,0) --(0.3,0.4,0) -- (0.3,-0.4,0) -- cycle;
\draw[fill=yellow,opacity=0.5] (0.3,0,0) -- (0.6,0,0) -- (0.3,0,0.2) -- cycle;
\end{scope}
\end{scope}
\begin{scope}[shift={(8cm,-6cm)},tdplot_main_coords,scale=2]
\begin{scope}
\draw[thick,->] (0,0,0) -- (2,0,0) node[anchor=north east]{$x$};
\draw[thick,->] (0,0,0) -- (0,2,0) node[anchor=north west]{$y$};
\draw[thick,->] (0,0,0) -- (0,0,1.5) node[anchor=south]{$z$};
\end{scope}
\begin{scope}[add rotation=around z with 30,add rotation=around y with 25,add rotation=around x with \rotangle,tdplot_rotated_coords]
\draw[thick,color=blue,->] (0,0,0) -- (1.7,0,0) node[anchor=north]{$x'$};
\draw[thick,color=blue,->] (0,0,0) -- (0,1.7,0) node[anchor=west]{$y'$};
\draw[thick,color=blue,->] (0,0,0) -- (0,0,1.2) node[anchor=south]{$z'$};
\draw[fill=green,opacity=0.5] (1.5,0,0) --(0.3,0.4,0) -- (0.3,-0.4,0) -- cycle;
\draw[fill=yellow,opacity=0.5] (0.3,0,0) -- (0.6,0,0) -- (0.3,0,0.2) -- cycle;
\end{scope}
\end{scope}
\end{tikzpicture}
}
\end{document}