diff options
Diffstat (limited to 'doc/latex/classmeow_1_1Rotation3D.tex')
-rw-r--r-- | doc/latex/classmeow_1_1Rotation3D.tex | 526 |
1 files changed, 0 insertions, 526 deletions
diff --git a/doc/latex/classmeow_1_1Rotation3D.tex b/doc/latex/classmeow_1_1Rotation3D.tex deleted file mode 100644 index b85e7b2..0000000 --- a/doc/latex/classmeow_1_1Rotation3D.tex +++ /dev/null @@ -1,526 +0,0 @@ -\hypertarget{classmeow_1_1Rotation3D}{\section{meow\-:\-:Rotation3\-D$<$ Scalar $>$ Class Template Reference} -\label{classmeow_1_1Rotation3D}\index{meow\-::\-Rotation3\-D$<$ Scalar $>$@{meow\-::\-Rotation3\-D$<$ Scalar $>$}} -} - - -Rotation a point/vector alone an axis with given angle in 3\-D world. - - - - -{\ttfamily \#include \char`\"{}Linear\-Transformations.\-h\char`\"{}} - -Inheritance diagram for meow\-:\-:Rotation3\-D$<$ Scalar $>$\-:\begin{figure}[H] -\begin{center} -\leavevmode -\includegraphics[height=3.000000cm]{classmeow_1_1Rotation3D} -\end{center} -\end{figure} -\subsection*{Public Member Functions} -\begin{DoxyCompactItemize} -\item -\hyperlink{classmeow_1_1Rotation3D_a90c102c7f74e8a36ac0d24bef6b06337}{Rotation3\-D} () -\item -\hyperlink{classmeow_1_1Rotation3D_ab566bace2339705305d7e18c36116d2a}{Rotation3\-D} (\hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} const \&b) -\item -\hyperlink{classmeow_1_1Rotation3D_aa9ce2a9c913ea08ba7fb43aed4784a2b}{$\sim$\-Rotation3\-D} () -\item -\hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} \& \hyperlink{classmeow_1_1Rotation3D_a8ce437d591d81cc81be959d6f27e71c9}{copy\-From} (\hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} const \&b) -\begin{DoxyCompactList}\small\item\em Copy data. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} \& \hyperlink{classmeow_1_1Rotation3D_ac2919c38518ea677a85df8757bd8f0d9}{reference\-From} (\hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} const \&b) -\begin{DoxyCompactList}\small\item\em Reference data. \end{DoxyCompactList}\item -Scalar \hyperlink{classmeow_1_1Rotation3D_ac6488df50303b564262065350186549a}{parameter} (size\-\_\-t i) const -\begin{DoxyCompactList}\small\item\em same as {\ttfamily theta(i)} \end{DoxyCompactList}\item -Scalar \hyperlink{classmeow_1_1Rotation3D_a0a7c3b7f605caf7bc54f80b25b317972}{parameter} (size\-\_\-t i, Scalar const \&s) -\begin{DoxyCompactList}\small\item\em same as {\ttfamily theta(i, s)} \end{DoxyCompactList}\item -Scalar const \& \hyperlink{classmeow_1_1Rotation3D_aeceaa78749d4bd9f5d638591298073dd}{theta} (size\-\_\-t i) const -\begin{DoxyCompactList}\small\item\em Get the {\ttfamily i} -\/th theta. \end{DoxyCompactList}\item -Scalar const \& \hyperlink{classmeow_1_1Rotation3D_a77a863b230bcacdfaf5a534f17268170}{theta} (size\-\_\-t i, Scalar const \&s) -\begin{DoxyCompactList}\small\item\em Set the {\ttfamily i} -\/th theta. \end{DoxyCompactList}\item -void \hyperlink{classmeow_1_1Rotation3D_a757a196f261a28693061c5e16be97ab6}{axis\-Angle} (\hyperlink{classmeow_1_1Vector}{Vector}$<$ Scalar $>$ const \&axis, Scalar const \&angle) -\begin{DoxyCompactList}\small\item\em Setting. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} \& \hyperlink{classmeow_1_1Rotation3D_a29ca99627654b9d136c12f6e0e2c91c5}{add} (\hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} const \&r) -\begin{DoxyCompactList}\small\item\em Concat another rotation transformation. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1Rotation3D_a566ebd46881ef0165aab55a4cf4ca169}{transformate} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&x) const -\begin{DoxyCompactList}\small\item\em Do the transformate. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1Rotation3D_a4846e5870c41f3694678d8acf032b8df}{jacobian} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&x) const -\begin{DoxyCompactList}\small\item\em Return the jacobian matrix (derivate by the input vector) of this transformate. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1Rotation3D_a201c56debd6cc0f4e75cb06148197726}{jacobian} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&x, size\-\_\-t i) const -\begin{DoxyCompactList}\small\item\em Return the jacobian matrix of this transformate. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1Rotation3D_aa872f44ce5b53faadddc9493697cfe13}{transformate\-Inv} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&x) const -\begin{DoxyCompactList}\small\item\em Do the inverse transformate. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1Rotation3D_ae12a31cabc1260bd7256734f0e04acfb}{jacobian\-Inv} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&x) const -\begin{DoxyCompactList}\small\item\em Return the jacobian matrix of the inverse form of this transformate. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1Rotation3D_af2a38c66668f6dcc11005e8f42b81f2f}{jacobian\-Inv} (\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ const \&x, size\-\_\-t i) const -\begin{DoxyCompactList}\small\item\em Return the jacobian matrix of the inverse form of this transformate. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Matrix}{Matrix}$<$ Scalar $>$ \hyperlink{classmeow_1_1Rotation3D_a513851c5d53274b76fd9511ba1aea484}{matrix\-Inv} () const -\begin{DoxyCompactList}\small\item\em Return the inverse matrix. \end{DoxyCompactList}\item -\hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} \& \hyperlink{classmeow_1_1Rotation3D_a3e0095d1f506d6f11c434d55e454aca6}{operator=} (\hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} const \&b) -\begin{DoxyCompactList}\small\item\em same as {\ttfamily copy\-From(b)} \end{DoxyCompactList}\end{DoxyCompactItemize} -\subsection*{Additional Inherited Members} - - -\subsection{Detailed Description} -\subsubsection*{template$<$class Scalar$>$class meow\-::\-Rotation3\-D$<$ Scalar $>$} - -Rotation a point/vector alone an axis with given angle in 3\-D world. - -\begin{DoxyAuthor}{Author} -cat\-\_\-leopard -\end{DoxyAuthor} - - -Definition at line 20 of file Linear\-Transformations.\-h. - - - -\subsection{Constructor \& Destructor Documentation} -\hypertarget{classmeow_1_1Rotation3D_a90c102c7f74e8a36ac0d24bef6b06337}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!Rotation3\-D@{Rotation3\-D}} -\index{Rotation3\-D@{Rotation3\-D}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{Rotation3\-D}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::{\bf Rotation3\-D} ( -\begin{DoxyParamCaption} -{} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_a90c102c7f74e8a36ac0d24bef6b06337} -Constructor with no rotation - -Definition at line 69 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_ab566bace2339705305d7e18c36116d2a}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!Rotation3\-D@{Rotation3\-D}} -\index{Rotation3\-D@{Rotation3\-D}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{Rotation3\-D}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::{\bf Rotation3\-D} ( -\begin{DoxyParamCaption} -\item[{{\bf Rotation3\-D}$<$ Scalar $>$ const \&}]{b} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_ab566bace2339705305d7e18c36116d2a} -Constructor and copy data - -Definition at line 75 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_aa9ce2a9c913ea08ba7fb43aed4784a2b}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!$\sim$\-Rotation3\-D@{$\sim$\-Rotation3\-D}} -\index{$\sim$\-Rotation3\-D@{$\sim$\-Rotation3\-D}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{$\sim$\-Rotation3\-D}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::$\sim${\bf Rotation3\-D} ( -\begin{DoxyParamCaption} -{} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_aa9ce2a9c913ea08ba7fb43aed4784a2b} -Destructor - -Definition at line 82 of file Linear\-Transformations.\-h. - - - -\subsection{Member Function Documentation} -\hypertarget{classmeow_1_1Rotation3D_a29ca99627654b9d136c12f6e0e2c91c5}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!add@{add}} -\index{add@{add}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{add}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Rotation3\-D}\& {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::add ( -\begin{DoxyParamCaption} -\item[{{\bf Rotation3\-D}$<$ Scalar $>$ const \&}]{r} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_a29ca99627654b9d136c12f6e0e2c91c5} - - -Concat another rotation transformation. - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em r} & another rotation transformation \\ -\hline -\end{DoxyParams} - - -Definition at line 171 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_a757a196f261a28693061c5e16be97ab6}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!axis\-Angle@{axis\-Angle}} -\index{axis\-Angle@{axis\-Angle}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{axis\-Angle}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ void {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::axis\-Angle ( -\begin{DoxyParamCaption} -\item[{{\bf Vector}$<$ Scalar $>$ const \&}]{axis, } -\item[{Scalar const \&}]{angle} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_a757a196f261a28693061c5e16be97ab6} - - -Setting. - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em axis} & axis \\ -\hline -\mbox{\tt in} & {\em angle} & angle \\ -\hline -\end{DoxyParams} - - -Definition at line 160 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_a8ce437d591d81cc81be959d6f27e71c9}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!copy\-From@{copy\-From}} -\index{copy\-From@{copy\-From}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{copy\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Rotation3\-D}\& {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::copy\-From ( -\begin{DoxyParamCaption} -\item[{{\bf Rotation3\-D}$<$ Scalar $>$ const \&}]{b} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_a8ce437d591d81cc81be959d6f27e71c9} - - -Copy data. - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em b} & another \hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} class. \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -{\ttfamily $\ast$this} -\end{DoxyReturn} - - -Definition at line 91 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_a4846e5870c41f3694678d8acf032b8df}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!jacobian@{jacobian}} -\index{jacobian@{jacobian}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{jacobian}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::jacobian ( -\begin{DoxyParamCaption} -\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{x} -\end{DoxyParamCaption} -) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Rotation3D_a4846e5870c41f3694678d8acf032b8df} - - -Return the jacobian matrix (derivate by the input vector) of this transformate. - -The matrix we return is\-: \[ \left[ \begin{array}{ccc} 2(n_x^2 - 1) \sin^2\phi + 1 & 2n_x n_y \sin^2\phi - 2n_z\cos \phi\sin \phi & 2n_x n_z \sin^2\phi + 2n_y\cos \phi\sin \phi \\ 2n_y n_x \sin^2\phi + 2n_z\cos \phi\sin \phi & 2(n_y^2 - 1) \sin^2\phi + 1 & 2n_y n_z \sin^2\phi - 2n_x\cos \phi\sin \phi \\ 2n_z n_x \sin^2\phi - 2n_y\cos \phi\sin \phi & 2n_z n_y \sin^2\phi + 2n_x\cos \phi\sin \phi & 2(n_z^2 - 1) \sin^2\phi + 1 \\ \end{array} \right] \] Where the definition of $ \vec{n} $ and $ \phi $ is the same as the definition in the description of the method {\bfseries \hyperlink{classmeow_1_1Rotation3D_a566ebd46881ef0165aab55a4cf4ca169}{transformate()}} . - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em x} & the input vector (in this case it is a useless parameter) \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -a matrix -\end{DoxyReturn} - - -Reimplemented from \hyperlink{classmeow_1_1Transformation_a97b459877b4e508193071fa166a126c9}{meow\-::\-Transformation$<$ Scalar $>$}. - - - -Definition at line 243 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_a201c56debd6cc0f4e75cb06148197726}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!jacobian@{jacobian}} -\index{jacobian@{jacobian}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{jacobian}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::jacobian ( -\begin{DoxyParamCaption} -\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{x, } -\item[{size\-\_\-t}]{i} -\end{DoxyParamCaption} -) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Rotation3D_a201c56debd6cc0f4e75cb06148197726} - - -Return the jacobian matrix of this transformate. - -Here we need to discussion in three case\-: -\begin{DoxyItemize} -\item {\itshape i} = 0, derivate by the x axis of the vector theta \[ \left[ \begin{array}{ccc} 0 & 0 & 0 \\ 0 & 0 & -1 \\ 0 & 1 & 0 \\ \end{array} \right] \left[ \begin{array}{ccc} 2(n_x^2 - 1) \sin^2\phi + 1 & 2n_x n_y \sin^2\phi - 2n_z\cos \phi\sin \phi & 2n_x n_z \sin^2\phi + 2n_y\cos \phi\sin \phi \\ 2n_y n_x \sin^2\phi + 2n_z\cos \phi\sin \phi & 2(n_y^2 - 1) \sin^2\phi + 1 & 2n_y n_z \sin^2\phi - 2n_x\cos \phi\sin \phi \\ 2n_z n_x \sin^2\phi - 2n_y\cos \phi\sin \phi & 2n_z n_y \sin^2\phi + 2n_x\cos \phi\sin \phi & 2(n_z^2 - 1) \sin^2\phi + 1 \\ \end{array} \right] \left[ \begin{array}{c} x \\ y \\ z \\ \end{array} \right] \] -\item {\itshape i} = 1, derivate by the y axis of the vector theta \[ \left[ \begin{array}{ccc} 0 & 0 & 1 \\ 0 & 0 & 0 \\ -1 & 0 & 0 \\ \end{array} \right] \left[ \begin{array}{ccc} 2(n_x^2 - 1) \sin^2\phi + 1 & 2n_x n_y \sin^2\phi - 2n_z\cos \phi\sin \phi & 2n_x n_z \sin^2\phi + 2n_y\cos \phi\sin \phi \\ 2n_y n_x \sin^2\phi + 2n_z\cos \phi\sin \phi & 2(n_y^2 - 1) \sin^2\phi + 1 & 2n_y n_z \sin^2\phi - 2n_x\cos \phi\sin \phi \\ 2n_z n_x \sin^2\phi - 2n_y\cos \phi\sin \phi & 2n_z n_y \sin^2\phi + 2n_x\cos \phi\sin \phi & 2(n_z^2 - 1) \sin^2\phi + 1 \\ \end{array} \right] \left[ \begin{array}{c} x \\ y \\ z \\ \end{array} \right] \] -\item {\itshape i} = 2, derivate by the z axis of the vector theta \[ \left[ \begin{array}{ccc} 0 & -1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 0 \\ \end{array} \right] \left[ \begin{array}{ccc} 2(n_x^2 - 1) \sin^2\phi + 1 & 2n_x n_y \sin^2\phi - 2n_z\cos \phi\sin \phi & 2n_x n_z \sin^2\phi + 2n_y\cos \phi\sin \phi \\ 2n_y n_x \sin^2\phi + 2n_z\cos \phi\sin \phi & 2(n_y^2 - 1) \sin^2\phi + 1 & 2n_y n_z \sin^2\phi - 2n_x\cos \phi\sin \phi \\ 2n_z n_x \sin^2\phi - 2n_y\cos \phi\sin \phi & 2n_z n_y \sin^2\phi + 2n_x\cos \phi\sin \phi & 2(n_z^2 - 1) \sin^2\phi + 1 \\ \end{array} \right] \left[ \begin{array}{c} x \\ y \\ z \\ \end{array} \right] \] -\end{DoxyItemize}Where $ (x,y,z) $ is the input vector, $ \vec{n}, \phi $ is the same one in the description of {\bfseries \hyperlink{classmeow_1_1Rotation3D_a566ebd46881ef0165aab55a4cf4ca169}{transformate()}}. - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em x} & the input vector \\ -\hline -\mbox{\tt in} & {\em i} & the index of the parameters(theta) to dervite \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -a matrix -\end{DoxyReturn} - - -Reimplemented from \hyperlink{classmeow_1_1Transformation_a18590a4501b79a9ad38eb8fa3c966eb8}{meow\-::\-Transformation$<$ Scalar $>$}. - - - -Definition at line 320 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_ae12a31cabc1260bd7256734f0e04acfb}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!jacobian\-Inv@{jacobian\-Inv}} -\index{jacobian\-Inv@{jacobian\-Inv}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{jacobian\-Inv}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::jacobian\-Inv ( -\begin{DoxyParamCaption} -\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{x} -\end{DoxyParamCaption} -) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Rotation3D_ae12a31cabc1260bd7256734f0e04acfb} - - -Return the jacobian matrix of the inverse form of this transformate. - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em x} & the input vector \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -a matrix -\end{DoxyReturn} - - -Reimplemented from \hyperlink{classmeow_1_1Transformation_a0186764bb80869bd80b81efb5bb1ee95}{meow\-::\-Transformation$<$ Scalar $>$}. - - - -Definition at line 354 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_af2a38c66668f6dcc11005e8f42b81f2f}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!jacobian\-Inv@{jacobian\-Inv}} -\index{jacobian\-Inv@{jacobian\-Inv}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{jacobian\-Inv}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::jacobian\-Inv ( -\begin{DoxyParamCaption} -\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{x, } -\item[{size\-\_\-t}]{i} -\end{DoxyParamCaption} -) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Rotation3D_af2a38c66668f6dcc11005e8f42b81f2f} - - -Return the jacobian matrix of the inverse form of this transformate. - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em x} & the input vector \\ -\hline -\mbox{\tt in} & {\em i} & the index of the parameters(theta) to dervite \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -a matrix -\end{DoxyReturn} - - -Reimplemented from \hyperlink{classmeow_1_1Transformation_a4e7e3b24d0879eddc53951dfb357db0b}{meow\-::\-Transformation$<$ Scalar $>$}. - - - -Definition at line 365 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_a513851c5d53274b76fd9511ba1aea484}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!matrix\-Inv@{matrix\-Inv}} -\index{matrix\-Inv@{matrix\-Inv}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{matrix\-Inv}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::matrix\-Inv ( -\begin{DoxyParamCaption} -{} -\end{DoxyParamCaption} -) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Rotation3D_a513851c5d53274b76fd9511ba1aea484} - - -Return the inverse matrix. - -In this case, the inverse matrix is equal to the transpose of the matrix - -\begin{DoxyReturn}{Returns} -a matrix -\end{DoxyReturn} - - -Reimplemented from \hyperlink{classmeow_1_1LinearTransformation_a60ead2898f321c5d77d099e1dc3e103c}{meow\-::\-Linear\-Transformation$<$ Scalar $>$}. - - - -Definition at line 391 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_a3e0095d1f506d6f11c434d55e454aca6}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!operator=@{operator=}} -\index{operator=@{operator=}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{operator=}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Rotation3\-D}\& {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::operator= ( -\begin{DoxyParamCaption} -\item[{{\bf Rotation3\-D}$<$ Scalar $>$ const \&}]{b} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_a3e0095d1f506d6f11c434d55e454aca6} - - -same as {\ttfamily copy\-From(b)} - - - -Definition at line 397 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_ac6488df50303b564262065350186549a}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!parameter@{parameter}} -\index{parameter@{parameter}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{parameter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ Scalar {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::parameter ( -\begin{DoxyParamCaption} -\item[{size\-\_\-t}]{i} -\end{DoxyParamCaption} -) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Rotation3D_ac6488df50303b564262065350186549a} - - -same as {\ttfamily theta(i)} - - - -Implements \hyperlink{classmeow_1_1Transformation_a09e71e5af508d7c0e09fdbeaacbe4365}{meow\-::\-Transformation$<$ Scalar $>$}. - - - -Definition at line 112 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_a0a7c3b7f605caf7bc54f80b25b317972}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!parameter@{parameter}} -\index{parameter@{parameter}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{parameter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ Scalar {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::parameter ( -\begin{DoxyParamCaption} -\item[{size\-\_\-t}]{i, } -\item[{Scalar const \&}]{s} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Rotation3D_a0a7c3b7f605caf7bc54f80b25b317972} - - -same as {\ttfamily theta(i, s)} - - - -Implements \hyperlink{classmeow_1_1Transformation_a2a90b93490712232b81a628b5057526f}{meow\-::\-Transformation$<$ Scalar $>$}. - - - -Definition at line 119 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_ac2919c38518ea677a85df8757bd8f0d9}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!reference\-From@{reference\-From}} -\index{reference\-From@{reference\-From}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{reference\-From}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Rotation3\-D}\& {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::reference\-From ( -\begin{DoxyParamCaption} -\item[{{\bf Rotation3\-D}$<$ Scalar $>$ const \&}]{b} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_ac2919c38518ea677a85df8757bd8f0d9} - - -Reference data. - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em b} & another \hyperlink{classmeow_1_1Rotation3D}{Rotation3\-D} class. \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -{\ttfamily $\ast$this} -\end{DoxyReturn} - - -Definition at line 103 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_aeceaa78749d4bd9f5d638591298073dd}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!theta@{theta}} -\index{theta@{theta}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{theta}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ Scalar const\& {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::theta ( -\begin{DoxyParamCaption} -\item[{size\-\_\-t}]{i} -\end{DoxyParamCaption} -) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_aeceaa78749d4bd9f5d638591298073dd} - - -Get the {\ttfamily i} -\/th theta. - -{\ttfamily i} can only be 1, 2 or 3 - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em i} & index \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -{\ttfamily i} -\/th theta -\end{DoxyReturn} - - -Definition at line 131 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_a77a863b230bcacdfaf5a534f17268170}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!theta@{theta}} -\index{theta@{theta}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{theta}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ Scalar const\& {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::theta ( -\begin{DoxyParamCaption} -\item[{size\-\_\-t}]{i, } -\item[{Scalar const \&}]{s} -\end{DoxyParamCaption} -)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classmeow_1_1Rotation3D_a77a863b230bcacdfaf5a534f17268170} - - -Set the {\ttfamily i} -\/th theta. - -{\ttfamily i} can only be 1, 2 or 3 - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em i} & index \\ -\hline -\mbox{\tt in} & {\em s} & new theta value \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -{\ttfamily i} -\/th theta -\end{DoxyReturn} - - -Definition at line 144 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_a566ebd46881ef0165aab55a4cf4ca169}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!transformate@{transformate}} -\index{transformate@{transformate}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{transformate}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::transformate ( -\begin{DoxyParamCaption} -\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{x} -\end{DoxyParamCaption} -) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Rotation3D_a566ebd46881ef0165aab55a4cf4ca169} - - -Do the transformate. - -Assume\-: -\begin{DoxyItemize} -\item The input vector is $ (x ,y ,z ) $ -\item The output vector is $ (x',y',z') $ -\item The parameters theta is $ \vec{\theta}=(\theta_x,\theta_y,\theta_z) $ -\end{DoxyItemize}Then we have\-: \[ \left[ \begin{array}{c} x' \\ y' \\ z' \\ \end{array} \right] = \left[ \begin{array}{ccc} 2(n_x^2 - 1) \sin^2\phi + 1 & 2n_x n_y \sin^2\phi - 2n_z\cos \phi\sin \phi & 2n_x n_z \sin^2\phi + 2n_y\cos \phi\sin \phi \\ 2n_y n_x \sin^2\phi + 2n_z\cos \phi\sin \phi & 2(n_y^2 - 1) \sin^2\phi + 1 & 2n_y n_z \sin^2\phi - 2n_x\cos \phi\sin \phi \\ 2n_z n_x \sin^2\phi - 2n_y\cos \phi\sin \phi & 2n_z n_y \sin^2\phi + 2n_x\cos \phi\sin \phi & 2(n_z^2 - 1) \sin^2\phi + 1 \\ \end{array} \right] \left[ \begin{array}{c} x \\ y \\ z \\ \end{array} \right] \] Where\-: -\begin{DoxyItemize} -\item $ \phi $ is the helf of length of $ \vec{\theta} $ , which means $ \phi = \frac{\left|\vec{\theta}\right|}{2} = \frac{1}{2}\sqrt{\theta_x^2 + \theta_y^2 + \theta_z^2} $ -\item $ \vec{n} $ is the normalized form of $ \vec{\theta} $ , which means $ \vec{n} = (n_x,n_y,n_z) = \vec{\theta} / 2\phi $ -\end{DoxyItemize} - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em x} & the input vector \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -the output matrix -\end{DoxyReturn} - - -Implements \hyperlink{classmeow_1_1Transformation_aa0c299b9ad13020a9eb460de01378ddc}{meow\-::\-Transformation$<$ Scalar $>$}. - - - -Definition at line 213 of file Linear\-Transformations.\-h. - -\hypertarget{classmeow_1_1Rotation3D_aa872f44ce5b53faadddc9493697cfe13}{\index{meow\-::\-Rotation3\-D@{meow\-::\-Rotation3\-D}!transformate\-Inv@{transformate\-Inv}} -\index{transformate\-Inv@{transformate\-Inv}!meow::Rotation3D@{meow\-::\-Rotation3\-D}} -\subsubsection[{transformate\-Inv}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Scalar$>$ {\bf Matrix}$<$Scalar$>$ {\bf meow\-::\-Rotation3\-D}$<$ Scalar $>$\-::transformate\-Inv ( -\begin{DoxyParamCaption} -\item[{{\bf Matrix}$<$ Scalar $>$ const \&}]{x} -\end{DoxyParamCaption} -) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{classmeow_1_1Rotation3D_aa872f44ce5b53faadddc9493697cfe13} - - -Do the inverse transformate. - - -\begin{DoxyParams}[1]{Parameters} -\mbox{\tt in} & {\em x} & the input vector \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -the output vector -\end{DoxyReturn} - - -Reimplemented from \hyperlink{classmeow_1_1Transformation_aa9a476c677e7efc805c0fbdccfb48b38}{meow\-::\-Transformation$<$ Scalar $>$}. - - - -Definition at line 344 of file Linear\-Transformations.\-h. - - - -The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize} -\item -meowpp/math/\hyperlink{LinearTransformations_8h}{Linear\-Transformations.\-h}\end{DoxyCompactItemize} |