\hypertarget{group___math}{}\doxysection{Math}
\label{group___math}\index{Math@{Math}}
\doxysubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \mbox{\hyperlink{class_ogre_1_1_affine3}{Ogre\+::\+Affine3}}
\begin{DoxyCompactList}\small\item\em Transform specialization for 3D Affine -\/ encapsulating a 3x4 Matrix. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_angle}{Ogre\+::\+Angle}}
\begin{DoxyCompactList}\small\item\em Wrapper class which identifies a value as the currently default angle type, as defined by \mbox{\hyperlink{class_ogre_1_1_math_afb791263d1e8508fc75f698a20d96b87}{Math\+::set\+Angle\+Unit}}. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_axis_aligned_box}{Ogre\+::\+Axis\+Aligned\+Box}}
\begin{DoxyCompactList}\small\item\em A 3D box aligned with the x/y/z axes. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_bitwise}{Ogre\+::\+Bitwise}}
\begin{DoxyCompactList}\small\item\em Class for manipulating bit patterns. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_convex_body}{Ogre\+::\+Convex\+Body}}
\begin{DoxyCompactList}\small\item\em Holds a solid representation of a convex body. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_degree}{Ogre\+::\+Degree}}
\begin{DoxyCompactList}\small\item\em Wrapper class which indicates a given angle value is in Degrees. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_dual_quaternion}{Ogre\+::\+Dual\+Quaternion}}
\begin{DoxyCompactList}\small\item\em Implementation of a dual quaternion, i.\+e. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_edge_data}{Ogre\+::\+Edge\+Data}}
\begin{DoxyCompactList}\small\item\em This class contains the information required to describe the edge connectivity of a given set of vertices and indexes. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_edge_list_builder}{Ogre\+::\+Edge\+List\+Builder}}
\begin{DoxyCompactList}\small\item\em General utility class for building edge lists for geometry. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_frustum}{Ogre\+::\+Frustum}}
\begin{DoxyCompactList}\small\item\em A frustum represents a pyramid, capped at the near and far end which is used to represent either a visible area or a projection area. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_math}{Ogre\+::\+Math}}
\begin{DoxyCompactList}\small\item\em Class to provide access to common mathematical functions. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_matrix3}{Ogre\+::\+Matrix3}}
\begin{DoxyCompactList}\small\item\em A 3x3 matrix which can represent rotations around axes. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_matrix4}{Ogre\+::\+Matrix4}}
\begin{DoxyCompactList}\small\item\em Transform specialization for projective -\/ encapsulating a 4x4 Matrix. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_numeric_solver}{Ogre\+::\+Numeric\+Solver}}
\begin{DoxyCompactList}\small\item\em Provides numeric solvers for \mbox{\hyperlink{namespace_ogre}{Ogre}}. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_optimised_util}{Ogre\+::\+Optimised\+Util}}
\begin{DoxyCompactList}\small\item\em Utility class for provides optimised functions. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_plane}{Ogre\+::\+Plane}}
\begin{DoxyCompactList}\small\item\em Defines a plane in 3D space. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_plane_bounded_volume}{Ogre\+::\+Plane\+Bounded\+Volume}}
\begin{DoxyCompactList}\small\item\em Represents a convex volume bounded by planes. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_polygon}{Ogre\+::\+Polygon}}
\begin{DoxyCompactList}\small\item\em The class represents a polygon in 3D space. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_quaternion}{Ogre\+::\+Quaternion}}
\begin{DoxyCompactList}\small\item\em Implementation of a \mbox{\hyperlink{class_ogre_1_1_quaternion}{Quaternion}}, i.\+e. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_radian}{Ogre\+::\+Radian}}
\begin{DoxyCompactList}\small\item\em Wrapper class which indicates a given angle value is in Radians. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_ray}{Ogre\+::\+Ray}}
\begin{DoxyCompactList}\small\item\em Representation of a ray in space, i.\+e. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_rotational_spline}{Ogre\+::\+Rotational\+Spline}}
\begin{DoxyCompactList}\small\item\em This class interpolates orientations (rotations) along a spline using derivatives of quaternions. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_simple_spline}{Ogre\+::\+Simple\+Spline}}
\begin{DoxyCompactList}\small\item\em A very simple spline class which implements the Catmull-\/\+Rom class of splines. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_sphere}{Ogre\+::\+Sphere}}
\begin{DoxyCompactList}\small\item\em A sphere primitive, mostly used for bounds checking. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_tangent_space_calc}{Ogre\+::\+Tangent\+Space\+Calc}}
\begin{DoxyCompactList}\small\item\em Class for calculating a tangent space basis. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_transform_base}{Ogre\+::\+Transform\+Base$<$ rows, T $>$}}
\begin{DoxyCompactList}\small\item\em Class encapsulating a standard 4x4 homogeneous matrix. \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{struct_ogre_1_1_transform_base_real}{Ogre\+::\+Transform\+Base\+Real}}
\item 
class \mbox{\hyperlink{class_ogre_1_1_vector}{Ogre\+::\+Vector$<$ dims, T $>$}}
\begin{DoxyCompactList}\small\item\em Standard N-\/dimensional vector. \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base$<$ dims, T $>$}}
\begin{DoxyCompactList}\small\item\em helper class to implement legacy A\+PI. Notably x, y, z access \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{struct_ogre_1_1_vector_base_3_012_00_01_real_01_4}{Ogre\+::\+Vector\+Base$<$ 2, Real $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1_vector_base_3_013_00_01_real_01_4}{Ogre\+::\+Vector\+Base$<$ 3, Real $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1_vector_base_3_014_00_01_real_01_4}{Ogre\+::\+Vector\+Base$<$ 4, Real $>$}}
\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef std\+::vector$<$ \mbox{\hyperlink{class_ogre_1_1_plane_bounded_volume}{Plane\+Bounded\+Volume}} $>$ \mbox{\hyperlink{group___math_gaf6bda7879d1ac92561a02cbd1833e1b1}{Ogre\+::\+Plane\+Bounded\+Volume\+List}}
\item 
typedef std\+::vector$<$ \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} $>$ \mbox{\hyperlink{group___math_ga4cfa65f236aec1767fc85022e87059a0}{Ogre\+::\+Plane\+List}}
\item 
typedef std\+::pair$<$ bool, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$ \mbox{\hyperlink{group___math_ga3f791f5ff19bd8395f0008085e68bf10}{Ogre\+::\+Ray\+Test\+Result}}
\begin{DoxyCompactList}\small\item\em A pair structure where the first element indicates whether an intersection occurs. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{group___math_ga62275d08557868fd87154c46dfcc9dfd}{Ogre\+::\+Frustum\+Plane}} \{ \newline
\mbox{\hyperlink{group___math_gga62275d08557868fd87154c46dfcc9dfdac3491138fb6ea5aab59e7a19df7775cf}{Ogre\+::\+F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+N\+E\+AR}} = 0, 
\mbox{\hyperlink{group___math_gga62275d08557868fd87154c46dfcc9dfda0dd893c751a483a18e1345aa88135e8f}{Ogre\+::\+F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+F\+AR}} = 1, 
\mbox{\hyperlink{group___math_gga62275d08557868fd87154c46dfcc9dfdaac17072b67144059d69d578706365499}{Ogre\+::\+F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+L\+E\+FT}} = 2, 
\mbox{\hyperlink{group___math_gga62275d08557868fd87154c46dfcc9dfdab0c99c0e896fe615393fabba067f1a30}{Ogre\+::\+F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+R\+I\+G\+HT}} = 3, 
\newline
\mbox{\hyperlink{group___math_gga62275d08557868fd87154c46dfcc9dfda44c7b45d93e28524064ae95457224a4b}{Ogre\+::\+F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+T\+OP}} = 4, 
\mbox{\hyperlink{group___math_gga62275d08557868fd87154c46dfcc9dfda4a8d7be432f1ee786179d29dfdf3ee10}{Ogre\+::\+F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+B\+O\+T\+T\+OM}} = 5
 \}
\begin{DoxyCompactList}\small\item\em Worldspace clipping planes. \end{DoxyCompactList}\item 
enum \mbox{\hyperlink{group___math_ga86b4672dfa02cea53b10a52bd6344305}{Ogre\+::\+Orientation\+Mode}} \{ \newline
\mbox{\hyperlink{group___math_gga86b4672dfa02cea53b10a52bd6344305a8e7655727ba9332f3843f46a4d1b126b}{Ogre\+::\+O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+0}} = 0, 
\mbox{\hyperlink{group___math_gga86b4672dfa02cea53b10a52bd6344305a28c273827e348532e2e5193ddb3c5c0e}{Ogre\+::\+O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+90}} = 1, 
\mbox{\hyperlink{group___math_gga86b4672dfa02cea53b10a52bd6344305acd8defb52221ab0634b6456b88777ea9}{Ogre\+::\+O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+180}} = 2, 
\mbox{\hyperlink{group___math_gga86b4672dfa02cea53b10a52bd6344305a2a392843ac77a835af8b3ca000bac382}{Ogre\+::\+O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+270}} = 3, 
\newline
\mbox{\hyperlink{group___math_gga86b4672dfa02cea53b10a52bd6344305abc9559bd9584facb95a611c0111b8894}{Ogre\+::\+O\+R\+\_\+\+P\+O\+R\+T\+R\+A\+IT}} = O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+0, 
\mbox{\hyperlink{group___math_gga86b4672dfa02cea53b10a52bd6344305ac5ccf894975be135988c046317296761}{Ogre\+::\+O\+R\+\_\+\+L\+A\+N\+D\+S\+C\+A\+P\+E\+R\+I\+G\+HT}} = O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+90, 
\mbox{\hyperlink{group___math_gga86b4672dfa02cea53b10a52bd6344305a286804a9c1f2abd94afa2eaff4ef40c4}{Ogre\+::\+O\+R\+\_\+\+L\+A\+N\+D\+S\+C\+A\+P\+E\+L\+E\+FT}} = O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+270
 \}
\begin{DoxyCompactList}\small\item\em Specifies orientation mode. \end{DoxyCompactList}\item 
enum \mbox{\hyperlink{group___math_gaf5dd9a3d1fd373b17108baa16065b1ce}{Ogre\+::\+Projection\+Type}} \{ \mbox{\hyperlink{group___math_ggaf5dd9a3d1fd373b17108baa16065b1cea739a7eabe0426ba0cd2f6e94a5e5be25}{Ogre\+::\+P\+T\+\_\+\+O\+R\+T\+H\+O\+G\+R\+A\+P\+H\+IC}}, 
\mbox{\hyperlink{group___math_ggaf5dd9a3d1fd373b17108baa16065b1ceab93552ced844b58965a168d27150e262}{Ogre\+::\+P\+T\+\_\+\+P\+E\+R\+S\+P\+E\+C\+T\+I\+VE}}
 \}
\begin{DoxyCompactList}\small\item\em Specifies perspective (realistic) or orthographic (architectural) projection. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group___math_gae928a6c0bafde7b018e386ed94d76a84}{Ogre\+::\+Radian\+::\+Radian}} (const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&d)
\item 
{\footnotesize template$<$class T $>$ }\\static \mbox{\hyperlink{_ogre_platform_8h_a6cbacd9965b6b575077a96dbf96cb23c}{O\+G\+R\+E\+\_\+\+F\+O\+R\+C\+E\+\_\+\+I\+N\+L\+I\+NE}} void \mbox{\hyperlink{group___math_ga5e88f4dcde9911b2f4f02d93f6247e0a}{Ogre\+::advance\+Raw\+Pointer}} (const T $\ast$\&ptr, ptrdiff\+\_\+t offset)
\begin{DoxyCompactList}\small\item\em Advance the pointer with raw offset. \end{DoxyCompactList}\item 
{\footnotesize template$<$class T $>$ }\\static \mbox{\hyperlink{_ogre_platform_8h_a6cbacd9965b6b575077a96dbf96cb23c}{O\+G\+R\+E\+\_\+\+F\+O\+R\+C\+E\+\_\+\+I\+N\+L\+I\+NE}} void \mbox{\hyperlink{group___math_gabaa0e7a826d6181df03f05f78d9f424d}{Ogre\+::advance\+Raw\+Pointer}} (T $\ast$\&ptr, ptrdiff\+\_\+t offset)
\item 
\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \mbox{\hyperlink{group___math_ga7a92915df275eae8161441024d88c815}{Ogre\+::\+Vector\+Base$<$ 2, Real $>$\+::angle\+To}} (const \mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \&other) const
\begin{DoxyCompactList}\small\item\em Gets the oriented angle between 2 vectors. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{group___math_ga813d02a0ee4c69dab452767fba1cef8a}{Ogre\+::\+Math\+::calculate\+Basic\+Face\+Normal}} (const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v1, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v2, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v3)
\begin{DoxyCompactList}\small\item\em Calculate a face normal, no w-\/information. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{group___math_gabcc5bd946f4c1fb73b851493e17b11b3}{Ogre\+::\+Math\+::calculate\+Basic\+Face\+Normal\+Without\+Normalize}} (const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v1, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v2, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v3)
\begin{DoxyCompactList}\small\item\em Calculate a face normal without normalize, no w-\/information. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \mbox{\hyperlink{group___math_gae5ba1fde5b6a0056fd637d4e6b781a2a}{Ogre\+::\+Math\+::calculate\+Face\+Normal}} (const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v1, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v2, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v3)
\begin{DoxyCompactList}\small\item\em Calculate a face normal, including the w component which is the offset from the origin. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \mbox{\hyperlink{group___math_gabc24b5e11a3a613f60dc44f6056dc61c}{Ogre\+::\+Math\+::calculate\+Face\+Normal\+Without\+Normalize}} (const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v1, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v2, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v3)
\begin{DoxyCompactList}\small\item\em Calculate a face normal without normalize, including the w component which is the offset from the origin. \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{group___math_gafe9157bbe30e69645edd5c3eddea141f}{Ogre\+::\+Vector\+Base$<$ 3, Real $>$\+::cross\+Product}} (const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&rk\+Vector) const
\begin{DoxyCompactList}\small\item\em Calculates the cross-\/product of 2 vectors, i.\+e. \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{group___math_gad67db81d99c63e2483ff8bc314bfd36c}{Ogre\+::\+Vector\+Base$<$ 3, Real $>$\+::direction\+Equals}} (const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&rhs, const \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \&tolerance) const
\begin{DoxyCompactList}\small\item\em Returns whether this vector is within a directional tolerance of another vector. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_ogre_1_1_quaternion}{Quaternion}} \mbox{\hyperlink{group___math_gac6ef79da21101ef5a671b0473b849bc3}{Ogre\+::\+Vector\+Base$<$ 3, Real $>$\+::get\+Rotation\+To}} (const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&dest, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&fallback\+Axis=\mbox{\hyperlink{struct_ogre_1_1_vector_base_3_013_00_01_real_01_4_a683a3ae0ddceb4a01a94c0727ca63362}{Z\+E\+RO}}) const
\begin{DoxyCompactList}\small\item\em Gets the shortest arc quaternion to rotate this vector to the destination vector. \end{DoxyCompactList}\item 
static bool \mbox{\hyperlink{group___math_gab3e9b9df69bd3255f3b64254e66c3321}{Ogre\+::\+Math\+::intersects}} (const \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} \&plane, const \mbox{\hyperlink{class_ogre_1_1_axis_aligned_box}{Axis\+Aligned\+Box}} \&box)
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} / box intersection test. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group___math_ga3f791f5ff19bd8395f0008085e68bf10}{Ray\+Test\+Result}} \mbox{\hyperlink{group___math_gafc5955de7b6ba0dfa860cc751c6321db}{Ogre\+::\+Math\+::intersects}} (const \mbox{\hyperlink{class_ogre_1_1_ray}{Ray}} \&ray, const \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} \&plane)
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_ray}{Ray}} / plane intersection. \end{DoxyCompactList}\item 
static \mbox{\hyperlink{group___math_ga3f791f5ff19bd8395f0008085e68bf10}{Ray\+Test\+Result}} \mbox{\hyperlink{group___math_ga64ed9272da4fcaccd8b1009a31358c61}{Ogre\+::\+Math\+::intersects}} (const \mbox{\hyperlink{class_ogre_1_1_ray}{Ray}} \&ray, const \mbox{\hyperlink{class_ogre_1_1_sphere}{Sphere}} \&sphere, bool discard\+Inside=true)
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_ray}{Ray}} / sphere intersection. \end{DoxyCompactList}\item 
static bool \mbox{\hyperlink{group___math_ga04786a5e338650d6eafc987b394d221c}{Ogre\+::\+Math\+::intersects}} (const \mbox{\hyperlink{class_ogre_1_1_sphere}{Sphere}} \&sphere, const \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} \&plane)
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_sphere}{Sphere}} / plane intersection test. \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \mbox{\hyperlink{group___math_ga4345346666fd54473efb51a8d194f5e0}{Ogre\+::\+Vector\+Base$<$ 2, Real $>$\+::mid\+Point}} (const \mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \&vec) const
\begin{DoxyCompactList}\small\item\em Returns a vector at a point half way between this and the passed in vector. \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{group___math_ga929562516cfb30c38030d9df84945bf3}{Ogre\+::\+Vector\+Base$<$ 3, Real $>$\+::mid\+Point}} (const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&vec) const
\begin{DoxyCompactList}\small\item\em Returns a vector at a point half way between this and the passed in vector. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group___math_ga166c0b2a2264eac93345461f93005b6e}{Ogre\+::\+Angle\+::operator Degree}} () const
\item 
\mbox{\hyperlink{group___math_gaf5f6b1190c20ab261874497f6bbb7dfd}{Ogre\+::\+Angle\+::operator Radian}} () const
\item 
\mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} \mbox{\hyperlink{group___math_ga4ad543ded2a895ca3cb655acde809d6f}{Ogre\+::operator$\ast$}} (const \mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} \&m, const \mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} \&m2)
\item 
\mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{group___math_ga15b5572666ec9a5a8c199d5289cd93bc}{Ogre\+::operator$\ast$}} (const \mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} \&m, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v)
\begin{DoxyCompactList}\small\item\em This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \mbox{\hyperlink{group___math_ga3edf0891dcf445e20821a0504f53b5c4}{Ogre\+::operator$\ast$}} (const \mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} \&m, const \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \&v)
\item 
\mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{group___math_ga4194c1302dc1f5f13904688d5aa0bc1c}{Ogre\+::operator$\ast$}} (const \mbox{\hyperlink{class_ogre_1_1_matrix3}{Matrix3}} \&m, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v)
\begin{DoxyCompactList}\small\item\em Matrix $\ast$ vector \mbox{[}3x3 $\ast$ 3x1 = 3x1\mbox{]}. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \mbox{\hyperlink{group___math_ga8283a37796cfb2426008099ba8a46e5f}{Ogre\+::operator$\ast$}} (const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&m, const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&m2)
\item 
\mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{group___math_ga0fec6369363b2abbb7a66f363c25c765}{Ogre\+::operator$\ast$}} (const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&m, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&v)
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_vector}{Vector}} transformation using \textquotesingle{}$\ast$\textquotesingle{}. \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \mbox{\hyperlink{group___math_ga74f8fe372c36a629f723be7ad92b9573}{Ogre\+::operator$\ast$}} (const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&m, const \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \&v)
\item 
\mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} \mbox{\hyperlink{group___math_ga2a819ee09ac0c63510f0079ba2bf2a3f}{Ogre\+::operator$\ast$}} (const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&mat, const \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} \&p)
\item 
\mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \mbox{\hyperlink{group___math_gab98d9fe8e0bd1f28f9fed1009cd745dd}{Ogre\+::operator$\ast$}} (const \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \&v, const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&mat)
\item 
\mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \mbox{\hyperlink{group___math_ga01057ea7c8adad28c8100750a78105c8}{Ogre\+::operator$\ast$}} (\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} a, const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&b)
\item 
\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \mbox{\hyperlink{group___math_ga03482705bf3612c6b96e5a187095e8ac}{Ogre\+::operator$\ast$}} (\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} a, const \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \&b)
\item 
\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \mbox{\hyperlink{group___math_ga6aee68f4913cf646f4fa3c046a18ee60}{Ogre\+::\+Radian\+::operator+}} (const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&d) const
\item 
\mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \mbox{\hyperlink{group___math_gadd40f27f78ed1fe8e59df586b53be488}{Ogre\+::operator+}} (const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&m, const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&m2)
\begin{DoxyCompactList}\small\item\em Matrix addition. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \& \mbox{\hyperlink{group___math_gaed5147935125e28f53cb19d70055bc88}{Ogre\+::\+Radian\+::operator+=}} (const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&d)
\item 
\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \mbox{\hyperlink{group___math_ga05fd614aac352a71e17d8eb559578d7b}{Ogre\+::\+Radian\+::operator-\/}} (const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&d) const
\item 
\mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \mbox{\hyperlink{group___math_ga7c6c12700fc4b4d2d5947166ef459ae3}{Ogre\+::operator-\/}} (const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&m, const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&m2)
\begin{DoxyCompactList}\small\item\em Matrix subtraction. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \& \mbox{\hyperlink{group___math_ga223a82b9ff74351959eee91a335e7cdb}{Ogre\+::\+Radian\+::operator-\/=}} (const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&d)
\item 
\mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \mbox{\hyperlink{group___math_ga5b1b6f29e0c3e2fdb55c88f7fd5ccf9b}{Ogre\+::operator/}} (\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} a, const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&b)
\item 
\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \mbox{\hyperlink{group___math_ga49268a0dd483041451c010eeec55f83a}{Ogre\+::operator/}} (\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} a, const \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \&b)
\item 
\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \& \mbox{\hyperlink{group___math_gafab8ce89cde3034f3cc5c2537d5ea6fd}{Ogre\+::\+Radian\+::operator=}} (const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&d)
\item 
\mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \mbox{\hyperlink{group___math_ga00e57f3eda32e31277c439e6a9c929a1}{Ogre\+::\+Vector\+Base$<$ 2, Real $>$\+::perpendicular}} (void) const
\begin{DoxyCompactList}\small\item\em Generates a vector perpendicular to this vector (eg an \textquotesingle{}up\textquotesingle{} vector). \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{group___math_ga5b50a2b2697ec1ac684d66af82a03296}{Ogre\+::\+Vector\+Base$<$ 3, Real $>$\+::perpendicular}} (void) const
\begin{DoxyCompactList}\small\item\em Generates a vector perpendicular to this vector (eg an \textquotesingle{}up\textquotesingle{} vector). \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{group___math_ga24dd46458beb0ea8175bfbf916f09e47}{Ogre\+::\+Vector\+Base$<$ 3, Real $>$\+::position\+Closes}} (const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&rhs, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} tolerance=1e-\/03f) const
\begin{DoxyCompactList}\small\item\em Returns whether this vector is within a positional tolerance of another vector, also take scale of the vectors into account. \end{DoxyCompactList}\item 
const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \& \mbox{\hyperlink{group___math_gad52e72c687842e8475a5f24cde8cd858}{Ogre\+::\+Vector\+Base$<$ 3, Real $>$\+::primary\+Axis}} () const
\begin{DoxyCompactList}\small\item\em Extract the primary (dominant) axis from this direction vector. \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{group___math_ga4f54a2dd6b60dd327fcc8347fc4d853d}{Ogre\+::\+Vector\+Base$<$ 3, Real $>$\+::random\+Deviant}} (const \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \&angle, const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&up=\mbox{\hyperlink{struct_ogre_1_1_vector_base_3_013_00_01_real_01_4_a683a3ae0ddceb4a01a94c0727ca63362}{Z\+E\+RO}}) const
\begin{DoxyCompactList}\small\item\em Generates a new random vector which deviates from this vector by a given angle in a random direction. \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \mbox{\hyperlink{group___math_gaba43517feb82c40ccf1cc571f519866c}{Ogre\+::\+Vector\+Base$<$ 2, Real $>$\+::random\+Deviant}} (\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} angle) const
\begin{DoxyCompactList}\small\item\em Generates a new random vector which deviates from this vector by a given angle in a random direction. \end{DoxyCompactList}\item 
{\footnotesize template$<$class T $>$ }\\static const \mbox{\hyperlink{_ogre_platform_8h_a6cbacd9965b6b575077a96dbf96cb23c}{O\+G\+R\+E\+\_\+\+F\+O\+R\+C\+E\+\_\+\+I\+N\+L\+I\+NE}} T $\ast$ \mbox{\hyperlink{group___math_ga4c8ed3000cda1cf960c9133140f62f1a}{Ogre\+::raw\+Offset\+Pointer}} (const T $\ast$ptr, ptrdiff\+\_\+t offset)
\begin{DoxyCompactList}\small\item\em Returns raw offseted of the given pointer. \end{DoxyCompactList}\item 
{\footnotesize template$<$class T $>$ }\\static \mbox{\hyperlink{_ogre_platform_8h_a6cbacd9965b6b575077a96dbf96cb23c}{O\+G\+R\+E\+\_\+\+F\+O\+R\+C\+E\+\_\+\+I\+N\+L\+I\+NE}} T $\ast$ \mbox{\hyperlink{group___math_ga28bf7a6afb9869ea9c88c04c719a9f26}{Ogre\+::raw\+Offset\+Pointer}} (T $\ast$ptr, ptrdiff\+\_\+t offset)
\item 
\mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \mbox{\hyperlink{group___math_gaebc7c568cc1d6f13405a756be1af73fa}{Ogre\+::\+Transform\+Base\+Real\+::transpose}} () const
\item 
\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} \mbox{\hyperlink{group___math_ga8f7034ef9399fbeed2e1183ee34c26d8}{Ogre\+::\+Radian\+::value\+Angle\+Units}} () const
\item 
\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} \mbox{\hyperlink{group___math_gaa8f0b95bb9c1b907676f4f80d733efd3}{Ogre\+::\+Degree\+::value\+Angle\+Units}} () const
\item 
\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} \mbox{\hyperlink{group___math_ga562b349029e40604b6cf201fc49ef68a}{Ogre\+::\+Radian\+::value\+Degrees}} () const
\item 
\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} \mbox{\hyperlink{group___math_gad18eb71b870151f8db42f9f4c8318096}{Ogre\+::\+Degree\+::value\+Radians}} () const
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}


\doxysubsection{Typedef Documentation}
\mbox{\Hypertarget{group___math_ga3f791f5ff19bd8395f0008085e68bf10}\label{group___math_ga3f791f5ff19bd8395f0008085e68bf10}} 
\index{Math@{Math}!RayTestResult@{RayTestResult}}
\index{RayTestResult@{RayTestResult}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{RayTestResult}{RayTestResult}}
{\footnotesize\ttfamily typedef std\+::pair$<$bool, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}$>$ \mbox{\hyperlink{group___math_ga3f791f5ff19bd8395f0008085e68bf10}{Ogre\+::\+Ray\+Test\+Result}}}



A pair structure where the first element indicates whether an intersection occurs. 

if true, the second element will indicate the distance along the ray at which it intersects. This can be converted to a point in space by calling \mbox{\hyperlink{class_ogre_1_1_ray_a81a7ec16f410cedf5c279152230bf67b}{Ray\+::get\+Point()}}. \mbox{\Hypertarget{group___math_ga4cfa65f236aec1767fc85022e87059a0}\label{group___math_ga4cfa65f236aec1767fc85022e87059a0}} 
\index{Math@{Math}!PlaneList@{PlaneList}}
\index{PlaneList@{PlaneList}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{PlaneList}{PlaneList}}
{\footnotesize\ttfamily typedef std\+::vector$<$\mbox{\hyperlink{class_ogre_1_1_plane}{Plane}}$>$ \mbox{\hyperlink{group___math_ga4cfa65f236aec1767fc85022e87059a0}{Ogre\+::\+Plane\+List}}}

\mbox{\Hypertarget{group___math_gaf6bda7879d1ac92561a02cbd1833e1b1}\label{group___math_gaf6bda7879d1ac92561a02cbd1833e1b1}} 
\index{Math@{Math}!PlaneBoundedVolumeList@{PlaneBoundedVolumeList}}
\index{PlaneBoundedVolumeList@{PlaneBoundedVolumeList}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{PlaneBoundedVolumeList}{PlaneBoundedVolumeList}}
{\footnotesize\ttfamily typedef std\+::vector$<$\mbox{\hyperlink{class_ogre_1_1_plane_bounded_volume}{Plane\+Bounded\+Volume}}$>$ \mbox{\hyperlink{group___math_gaf6bda7879d1ac92561a02cbd1833e1b1}{Ogre\+::\+Plane\+Bounded\+Volume\+List}}}



\doxysubsection{Enumeration Type Documentation}
\mbox{\Hypertarget{group___math_ga86b4672dfa02cea53b10a52bd6344305}\label{group___math_ga86b4672dfa02cea53b10a52bd6344305}} 
\index{Math@{Math}!OrientationMode@{OrientationMode}}
\index{OrientationMode@{OrientationMode}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{OrientationMode}{OrientationMode}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{group___math_ga86b4672dfa02cea53b10a52bd6344305}{Ogre\+::\+Orientation\+Mode}}}



Specifies orientation mode. 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{OR\_DEGREE\_0@{OR\_DEGREE\_0}!Math@{Math}}\index{Math@{Math}!OR\_DEGREE\_0@{OR\_DEGREE\_0}}}\mbox{\Hypertarget{group___math_gga86b4672dfa02cea53b10a52bd6344305a8e7655727ba9332f3843f46a4d1b126b}\label{group___math_gga86b4672dfa02cea53b10a52bd6344305a8e7655727ba9332f3843f46a4d1b126b}} 
O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+0&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{OR\_DEGREE\_90@{OR\_DEGREE\_90}!Math@{Math}}\index{Math@{Math}!OR\_DEGREE\_90@{OR\_DEGREE\_90}}}\mbox{\Hypertarget{group___math_gga86b4672dfa02cea53b10a52bd6344305a28c273827e348532e2e5193ddb3c5c0e}\label{group___math_gga86b4672dfa02cea53b10a52bd6344305a28c273827e348532e2e5193ddb3c5c0e}} 
O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+90&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{OR\_DEGREE\_180@{OR\_DEGREE\_180}!Math@{Math}}\index{Math@{Math}!OR\_DEGREE\_180@{OR\_DEGREE\_180}}}\mbox{\Hypertarget{group___math_gga86b4672dfa02cea53b10a52bd6344305acd8defb52221ab0634b6456b88777ea9}\label{group___math_gga86b4672dfa02cea53b10a52bd6344305acd8defb52221ab0634b6456b88777ea9}} 
O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+180&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{OR\_DEGREE\_270@{OR\_DEGREE\_270}!Math@{Math}}\index{Math@{Math}!OR\_DEGREE\_270@{OR\_DEGREE\_270}}}\mbox{\Hypertarget{group___math_gga86b4672dfa02cea53b10a52bd6344305a2a392843ac77a835af8b3ca000bac382}\label{group___math_gga86b4672dfa02cea53b10a52bd6344305a2a392843ac77a835af8b3ca000bac382}} 
O\+R\+\_\+\+D\+E\+G\+R\+E\+E\+\_\+270&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{OR\_PORTRAIT@{OR\_PORTRAIT}!Math@{Math}}\index{Math@{Math}!OR\_PORTRAIT@{OR\_PORTRAIT}}}\mbox{\Hypertarget{group___math_gga86b4672dfa02cea53b10a52bd6344305abc9559bd9584facb95a611c0111b8894}\label{group___math_gga86b4672dfa02cea53b10a52bd6344305abc9559bd9584facb95a611c0111b8894}} 
O\+R\+\_\+\+P\+O\+R\+T\+R\+A\+IT&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{OR\_LANDSCAPERIGHT@{OR\_LANDSCAPERIGHT}!Math@{Math}}\index{Math@{Math}!OR\_LANDSCAPERIGHT@{OR\_LANDSCAPERIGHT}}}\mbox{\Hypertarget{group___math_gga86b4672dfa02cea53b10a52bd6344305ac5ccf894975be135988c046317296761}\label{group___math_gga86b4672dfa02cea53b10a52bd6344305ac5ccf894975be135988c046317296761}} 
O\+R\+\_\+\+L\+A\+N\+D\+S\+C\+A\+P\+E\+R\+I\+G\+HT&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{OR\_LANDSCAPELEFT@{OR\_LANDSCAPELEFT}!Math@{Math}}\index{Math@{Math}!OR\_LANDSCAPELEFT@{OR\_LANDSCAPELEFT}}}\mbox{\Hypertarget{group___math_gga86b4672dfa02cea53b10a52bd6344305a286804a9c1f2abd94afa2eaff4ef40c4}\label{group___math_gga86b4672dfa02cea53b10a52bd6344305a286804a9c1f2abd94afa2eaff4ef40c4}} 
O\+R\+\_\+\+L\+A\+N\+D\+S\+C\+A\+P\+E\+L\+E\+FT&\\
\hline

\end{DoxyEnumFields}
\mbox{\Hypertarget{group___math_gaf5dd9a3d1fd373b17108baa16065b1ce}\label{group___math_gaf5dd9a3d1fd373b17108baa16065b1ce}} 
\index{Math@{Math}!ProjectionType@{ProjectionType}}
\index{ProjectionType@{ProjectionType}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{ProjectionType}{ProjectionType}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{group___math_gaf5dd9a3d1fd373b17108baa16065b1ce}{Ogre\+::\+Projection\+Type}}}



Specifies perspective (realistic) or orthographic (architectural) projection. 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{PT\_ORTHOGRAPHIC@{PT\_ORTHOGRAPHIC}!Math@{Math}}\index{Math@{Math}!PT\_ORTHOGRAPHIC@{PT\_ORTHOGRAPHIC}}}\mbox{\Hypertarget{group___math_ggaf5dd9a3d1fd373b17108baa16065b1cea739a7eabe0426ba0cd2f6e94a5e5be25}\label{group___math_ggaf5dd9a3d1fd373b17108baa16065b1cea739a7eabe0426ba0cd2f6e94a5e5be25}} 
P\+T\+\_\+\+O\+R\+T\+H\+O\+G\+R\+A\+P\+H\+IC&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{PT\_PERSPECTIVE@{PT\_PERSPECTIVE}!Math@{Math}}\index{Math@{Math}!PT\_PERSPECTIVE@{PT\_PERSPECTIVE}}}\mbox{\Hypertarget{group___math_ggaf5dd9a3d1fd373b17108baa16065b1ceab93552ced844b58965a168d27150e262}\label{group___math_ggaf5dd9a3d1fd373b17108baa16065b1ceab93552ced844b58965a168d27150e262}} 
P\+T\+\_\+\+P\+E\+R\+S\+P\+E\+C\+T\+I\+VE&\\
\hline

\end{DoxyEnumFields}
\mbox{\Hypertarget{group___math_ga62275d08557868fd87154c46dfcc9dfd}\label{group___math_ga62275d08557868fd87154c46dfcc9dfd}} 
\index{Math@{Math}!FrustumPlane@{FrustumPlane}}
\index{FrustumPlane@{FrustumPlane}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{FrustumPlane}{FrustumPlane}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{group___math_ga62275d08557868fd87154c46dfcc9dfd}{Ogre\+::\+Frustum\+Plane}}}



Worldspace clipping planes. 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{FRUSTUM\_PLANE\_NEAR@{FRUSTUM\_PLANE\_NEAR}!Math@{Math}}\index{Math@{Math}!FRUSTUM\_PLANE\_NEAR@{FRUSTUM\_PLANE\_NEAR}}}\mbox{\Hypertarget{group___math_gga62275d08557868fd87154c46dfcc9dfdac3491138fb6ea5aab59e7a19df7775cf}\label{group___math_gga62275d08557868fd87154c46dfcc9dfdac3491138fb6ea5aab59e7a19df7775cf}} 
F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+N\+E\+AR&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{FRUSTUM\_PLANE\_FAR@{FRUSTUM\_PLANE\_FAR}!Math@{Math}}\index{Math@{Math}!FRUSTUM\_PLANE\_FAR@{FRUSTUM\_PLANE\_FAR}}}\mbox{\Hypertarget{group___math_gga62275d08557868fd87154c46dfcc9dfda0dd893c751a483a18e1345aa88135e8f}\label{group___math_gga62275d08557868fd87154c46dfcc9dfda0dd893c751a483a18e1345aa88135e8f}} 
F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+F\+AR&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{FRUSTUM\_PLANE\_LEFT@{FRUSTUM\_PLANE\_LEFT}!Math@{Math}}\index{Math@{Math}!FRUSTUM\_PLANE\_LEFT@{FRUSTUM\_PLANE\_LEFT}}}\mbox{\Hypertarget{group___math_gga62275d08557868fd87154c46dfcc9dfdaac17072b67144059d69d578706365499}\label{group___math_gga62275d08557868fd87154c46dfcc9dfdaac17072b67144059d69d578706365499}} 
F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+L\+E\+FT&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{FRUSTUM\_PLANE\_RIGHT@{FRUSTUM\_PLANE\_RIGHT}!Math@{Math}}\index{Math@{Math}!FRUSTUM\_PLANE\_RIGHT@{FRUSTUM\_PLANE\_RIGHT}}}\mbox{\Hypertarget{group___math_gga62275d08557868fd87154c46dfcc9dfdab0c99c0e896fe615393fabba067f1a30}\label{group___math_gga62275d08557868fd87154c46dfcc9dfdab0c99c0e896fe615393fabba067f1a30}} 
F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+R\+I\+G\+HT&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{FRUSTUM\_PLANE\_TOP@{FRUSTUM\_PLANE\_TOP}!Math@{Math}}\index{Math@{Math}!FRUSTUM\_PLANE\_TOP@{FRUSTUM\_PLANE\_TOP}}}\mbox{\Hypertarget{group___math_gga62275d08557868fd87154c46dfcc9dfda44c7b45d93e28524064ae95457224a4b}\label{group___math_gga62275d08557868fd87154c46dfcc9dfda44c7b45d93e28524064ae95457224a4b}} 
F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+T\+OP&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{FRUSTUM\_PLANE\_BOTTOM@{FRUSTUM\_PLANE\_BOTTOM}!Math@{Math}}\index{Math@{Math}!FRUSTUM\_PLANE\_BOTTOM@{FRUSTUM\_PLANE\_BOTTOM}}}\mbox{\Hypertarget{group___math_gga62275d08557868fd87154c46dfcc9dfda4a8d7be432f1ee786179d29dfdf3ee10}\label{group___math_gga62275d08557868fd87154c46dfcc9dfda4a8d7be432f1ee786179d29dfdf3ee10}} 
F\+R\+U\+S\+T\+U\+M\+\_\+\+P\+L\+A\+N\+E\+\_\+\+B\+O\+T\+T\+OM&\\
\hline

\end{DoxyEnumFields}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group___math_ga03482705bf3612c6b96e5a187095e8ac}\label{group___math_ga03482705bf3612c6b96e5a187095e8ac}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [1/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}}]{a,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \&}]{b }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Radian\+::value\+Radians().

\mbox{\Hypertarget{group___math_ga49268a0dd483041451c010eeec55f83a}\label{group___math_ga49268a0dd483041451c010eeec55f83a}} 
\index{Math@{Math}!operator/@{operator/}}
\index{operator/@{operator/}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator/()}{operator/()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} Ogre\+::operator/ (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}}]{a,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \&}]{b }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Radian\+::value\+Radians().

\mbox{\Hypertarget{group___math_ga01057ea7c8adad28c8100750a78105c8}\label{group___math_ga01057ea7c8adad28c8100750a78105c8}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [2/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}}]{a,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&}]{b }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Degree\+::value\+Degrees().

\mbox{\Hypertarget{group___math_ga5b1b6f29e0c3e2fdb55c88f7fd5ccf9b}\label{group___math_ga5b1b6f29e0c3e2fdb55c88f7fd5ccf9b}} 
\index{Math@{Math}!operator/@{operator/}}
\index{operator/@{operator/}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator/()}{operator/()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} Ogre\+::operator/ (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}}]{a,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&}]{b }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Degree\+::value\+Degrees().

\mbox{\Hypertarget{group___math_ga4194c1302dc1f5f13904688d5aa0bc1c}\label{group___math_ga4194c1302dc1f5f13904688d5aa0bc1c}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [3/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix3}{Matrix3}} \&}]{m,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Matrix $\ast$ vector \mbox{[}3x3 $\ast$ 3x1 = 3x1\mbox{]}. 

\mbox{\Hypertarget{group___math_ga8283a37796cfb2426008099ba8a46e5f}\label{group___math_ga8283a37796cfb2426008099ba8a46e5f}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [4/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{m,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{m2 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

\mbox{\Hypertarget{group___math_gadd40f27f78ed1fe8e59df586b53be488}\label{group___math_gadd40f27f78ed1fe8e59df586b53be488}} 
\index{Math@{Math}!operator+@{operator+}}
\index{operator+@{operator+}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator+()}{operator+()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} Ogre\+::operator+ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{m,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{m2 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Matrix addition. 

\mbox{\Hypertarget{group___math_ga7c6c12700fc4b4d2d5947166ef459ae3}\label{group___math_ga7c6c12700fc4b4d2d5947166ef459ae3}} 
\index{Math@{Math}!operator-\/@{operator-\/}}
\index{operator-\/@{operator-\/}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator-\/()}{operator-()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} Ogre\+::operator-\/ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{m,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{m2 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Matrix subtraction. 

\mbox{\Hypertarget{group___math_ga4ad543ded2a895ca3cb655acde809d6f}\label{group___math_ga4ad543ded2a895ca3cb655acde809d6f}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [5/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} \&}]{m,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} \&}]{m2 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

\mbox{\Hypertarget{group___math_ga0fec6369363b2abbb7a66f363c25c765}\label{group___math_ga0fec6369363b2abbb7a66f363c25c765}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [6/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{m,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



\mbox{\hyperlink{class_ogre_1_1_vector}{Vector}} transformation using \textquotesingle{}$\ast$\textquotesingle{}. 

\begin{DoxyRemark}{Remarks}
Transforms the given 3-\/D vector by the matrix, projecting the result back into {\itshape w} = 1. 
\end{DoxyRemark}
\begin{DoxyNote}{Note}
This means that the initial {\itshape w} is considered to be 1.\+0, and then all the tree elements of the resulting 3-\/D vector are divided by the resulting {\itshape w}. 
\end{DoxyNote}
\mbox{\Hypertarget{group___math_ga15b5572666ec9a5a8c199d5289cd93bc}\label{group___math_ga15b5572666ec9a5a8c199d5289cd93bc}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [7/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} \&}]{m,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. 

\mbox{\Hypertarget{group___math_ga74f8fe372c36a629f723be7ad92b9573}\label{group___math_ga74f8fe372c36a629f723be7ad92b9573}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [8/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{m,  }\item[{const \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \&}]{v }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

\mbox{\Hypertarget{group___math_ga3edf0891dcf445e20821a0504f53b5c4}\label{group___math_ga3edf0891dcf445e20821a0504f53b5c4}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [9/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_affine3}{Affine3}} \&}]{m,  }\item[{const \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \&}]{v }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

\mbox{\Hypertarget{group___math_gab98d9fe8e0bd1f28f9fed1009cd745dd}\label{group___math_gab98d9fe8e0bd1f28f9fed1009cd745dd}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [10/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} \&}]{v,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{mat }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

\mbox{\Hypertarget{group___math_ga4c8ed3000cda1cf960c9133140f62f1a}\label{group___math_ga4c8ed3000cda1cf960c9133140f62f1a}} 
\index{Math@{Math}!rawOffsetPointer@{rawOffsetPointer}}
\index{rawOffsetPointer@{rawOffsetPointer}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{rawOffsetPointer()}{rawOffsetPointer()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$class T $>$ \\
static const \mbox{\hyperlink{_ogre_platform_8h_a6cbacd9965b6b575077a96dbf96cb23c}{O\+G\+R\+E\+\_\+\+F\+O\+R\+C\+E\+\_\+\+I\+N\+L\+I\+NE}} T$\ast$ Ogre\+::raw\+Offset\+Pointer (\begin{DoxyParamCaption}\item[{const T $\ast$}]{ptr,  }\item[{ptrdiff\+\_\+t}]{offset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Returns raw offseted of the given pointer. 

\begin{DoxyNote}{Note}
The offset are in bytes, no matter what type of the pointer. 
\end{DoxyNote}


Referenced by Ogre\+::advance\+Raw\+Pointer().

\mbox{\Hypertarget{group___math_ga28bf7a6afb9869ea9c88c04c719a9f26}\label{group___math_ga28bf7a6afb9869ea9c88c04c719a9f26}} 
\index{Math@{Math}!rawOffsetPointer@{rawOffsetPointer}}
\index{rawOffsetPointer@{rawOffsetPointer}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{rawOffsetPointer()}{rawOffsetPointer()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$class T $>$ \\
static \mbox{\hyperlink{_ogre_platform_8h_a6cbacd9965b6b575077a96dbf96cb23c}{O\+G\+R\+E\+\_\+\+F\+O\+R\+C\+E\+\_\+\+I\+N\+L\+I\+NE}} T$\ast$ Ogre\+::raw\+Offset\+Pointer (\begin{DoxyParamCaption}\item[{T $\ast$}]{ptr,  }\item[{ptrdiff\+\_\+t}]{offset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\Hypertarget{group___math_ga5e88f4dcde9911b2f4f02d93f6247e0a}\label{group___math_ga5e88f4dcde9911b2f4f02d93f6247e0a}} 
\index{Math@{Math}!advanceRawPointer@{advanceRawPointer}}
\index{advanceRawPointer@{advanceRawPointer}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{advanceRawPointer()}{advanceRawPointer()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$class T $>$ \\
static \mbox{\hyperlink{_ogre_platform_8h_a6cbacd9965b6b575077a96dbf96cb23c}{O\+G\+R\+E\+\_\+\+F\+O\+R\+C\+E\+\_\+\+I\+N\+L\+I\+NE}} void Ogre\+::advance\+Raw\+Pointer (\begin{DoxyParamCaption}\item[{const T $\ast$\&}]{ptr,  }\item[{ptrdiff\+\_\+t}]{offset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Advance the pointer with raw offset. 

\begin{DoxyNote}{Note}
The offset are in bytes, no matter what type of the pointer. 
\end{DoxyNote}


References Ogre\+::raw\+Offset\+Pointer().

\mbox{\Hypertarget{group___math_gabaa0e7a826d6181df03f05f78d9f424d}\label{group___math_gabaa0e7a826d6181df03f05f78d9f424d}} 
\index{Math@{Math}!advanceRawPointer@{advanceRawPointer}}
\index{advanceRawPointer@{advanceRawPointer}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{advanceRawPointer()}{advanceRawPointer()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$class T $>$ \\
static \mbox{\hyperlink{_ogre_platform_8h_a6cbacd9965b6b575077a96dbf96cb23c}{O\+G\+R\+E\+\_\+\+F\+O\+R\+C\+E\+\_\+\+I\+N\+L\+I\+NE}} void Ogre\+::advance\+Raw\+Pointer (\begin{DoxyParamCaption}\item[{T $\ast$\&}]{ptr,  }\item[{ptrdiff\+\_\+t}]{offset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References Ogre\+::raw\+Offset\+Pointer().

\mbox{\Hypertarget{group___math_ga2a819ee09ac0c63510f0079ba2bf2a3f}\label{group___math_ga2a819ee09ac0c63510f0079ba2bf2a3f}} 
\index{Math@{Math}!operator$\ast$@{operator$\ast$}}
\index{operator$\ast$@{operator$\ast$}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator$\ast$()}{operator*()}\hspace{0.1cm}{\footnotesize\ttfamily [11/11]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} Ogre\+::operator$\ast$ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} \&}]{mat,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} \&}]{p }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Plane\+::d, Ogre\+::\+Matrix4\+::inverse(), Ogre\+::\+Plane\+::normal, Ogre\+::\+Vector$<$ dims, T $>$\+::normalise(), and Ogre\+::\+Transform\+Base\+Real\+::transpose().

\mbox{\Hypertarget{group___math_gae928a6c0bafde7b018e386ed94d76a84}\label{group___math_gae928a6c0bafde7b018e386ed94d76a84}} 
\index{Math@{Math}!Radian@{Radian}}
\index{Radian@{Radian}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{Radian()}{Radian()}}
{\footnotesize\ttfamily Ogre\+::\+Radian\+::\+Radian (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&}]{d }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

\mbox{\Hypertarget{group___math_gafab8ce89cde3034f3cc5c2537d5ea6fd}\label{group___math_gafab8ce89cde3034f3cc5c2537d5ea6fd}} 
\index{Math@{Math}!operator=@{operator=}}
\index{operator=@{operator=}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator=()}{operator=()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \& Ogre\+::\+Radian\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&}]{d }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Degree\+::value\+Radians().

\mbox{\Hypertarget{group___math_ga6aee68f4913cf646f4fa3c046a18ee60}\label{group___math_ga6aee68f4913cf646f4fa3c046a18ee60}} 
\index{Math@{Math}!operator+@{operator+}}
\index{operator+@{operator+}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator+()}{operator+()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} Ogre\+::\+Radian\+::operator+ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&}]{d }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Radian\+::\+Radian(), and Ogre\+::\+Degree\+::value\+Radians().

\mbox{\Hypertarget{group___math_gaed5147935125e28f53cb19d70055bc88}\label{group___math_gaed5147935125e28f53cb19d70055bc88}} 
\index{Math@{Math}!operator+=@{operator+=}}
\index{operator+=@{operator+=}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator+=()}{operator+=()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \& Ogre\+::\+Radian\+::operator+= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&}]{d }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Degree\+::value\+Radians().

\mbox{\Hypertarget{group___math_ga05fd614aac352a71e17d8eb559578d7b}\label{group___math_ga05fd614aac352a71e17d8eb559578d7b}} 
\index{Math@{Math}!operator-\/@{operator-\/}}
\index{operator-\/@{operator-\/}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator-\/()}{operator-()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} Ogre\+::\+Radian\+::operator-\/ (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&}]{d }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Radian\+::\+Radian(), and Ogre\+::\+Degree\+::value\+Radians().

\mbox{\Hypertarget{group___math_ga223a82b9ff74351959eee91a335e7cdb}\label{group___math_ga223a82b9ff74351959eee91a335e7cdb}} 
\index{Math@{Math}!operator-\/=@{operator-\/=}}
\index{operator-\/=@{operator-\/=}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator-\/=()}{operator-=()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \& Ogre\+::\+Radian\+::operator-\/= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} \&}]{d }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Degree\+::value\+Radians().

\mbox{\Hypertarget{group___math_ga562b349029e40604b6cf201fc49ef68a}\label{group___math_ga562b349029e40604b6cf201fc49ef68a}} 
\index{Math@{Math}!valueDegrees@{valueDegrees}}
\index{valueDegrees@{valueDegrees}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{valueDegrees()}{valueDegrees()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} Ogre\+::\+Radian\+::value\+Degrees (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Math\+::\+Radians\+To\+Degrees().



Referenced by Ogre\+::\+Degree\+::operator+(), Ogre\+::\+Degree\+::operator+=(), Ogre\+::\+Degree\+::operator-\/(), Ogre\+::\+Degree\+::operator-\/=(), and Ogre\+::\+Degree\+::operator=().

\mbox{\Hypertarget{group___math_ga8f7034ef9399fbeed2e1183ee34c26d8}\label{group___math_ga8f7034ef9399fbeed2e1183ee34c26d8}} 
\index{Math@{Math}!valueAngleUnits@{valueAngleUnits}}
\index{valueAngleUnits@{valueAngleUnits}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{valueAngleUnits()}{valueAngleUnits()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} Ogre\+::\+Radian\+::value\+Angle\+Units (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Math\+::\+Radians\+To\+Angle\+Units().



Referenced by Ogre\+::\+String\+Converter\+::to\+String().

\mbox{\Hypertarget{group___math_gad18eb71b870151f8db42f9f4c8318096}\label{group___math_gad18eb71b870151f8db42f9f4c8318096}} 
\index{Math@{Math}!valueRadians@{valueRadians}}
\index{valueRadians@{valueRadians}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{valueRadians()}{valueRadians()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} Ogre\+::\+Degree\+::value\+Radians (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Math\+::\+Degrees\+To\+Radians().



Referenced by Ogre\+::\+Radian\+::operator+(), Ogre\+::\+Radian\+::operator+=(), Ogre\+::\+Radian\+::operator-\/(), Ogre\+::\+Radian\+::operator-\/=(), and Ogre\+::\+Radian\+::operator=().

\mbox{\Hypertarget{group___math_gaa8f0b95bb9c1b907676f4f80d733efd3}\label{group___math_gaa8f0b95bb9c1b907676f4f80d733efd3}} 
\index{Math@{Math}!valueAngleUnits@{valueAngleUnits}}
\index{valueAngleUnits@{valueAngleUnits}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{valueAngleUnits()}{valueAngleUnits()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} Ogre\+::\+Degree\+::value\+Angle\+Units (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Math\+::\+Degrees\+To\+Angle\+Units().



Referenced by Ogre\+::\+String\+Converter\+::to\+String().

\mbox{\Hypertarget{group___math_gaf5f6b1190c20ab261874497f6bbb7dfd}\label{group___math_gaf5f6b1190c20ab261874497f6bbb7dfd}} 
\index{Math@{Math}!operator Radian@{operator Radian}}
\index{operator Radian@{operator Radian}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator Radian()}{operator Radian()}}
{\footnotesize\ttfamily Ogre\+::\+Angle\+::operator \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Math\+::\+Angle\+Units\+To\+Radians().

\mbox{\Hypertarget{group___math_ga166c0b2a2264eac93345461f93005b6e}\label{group___math_ga166c0b2a2264eac93345461f93005b6e}} 
\index{Math@{Math}!operator Degree@{operator Degree}}
\index{operator Degree@{operator Degree}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{operator Degree()}{operator Degree()}}
{\footnotesize\ttfamily Ogre\+::\+Angle\+::operator \mbox{\hyperlink{class_ogre_1_1_degree}{Degree}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



References Ogre\+::\+Math\+::\+Angle\+Units\+To\+Degrees().

\mbox{\Hypertarget{group___math_gaebc7c568cc1d6f13405a756be1af73fa}\label{group___math_gaebc7c568cc1d6f13405a756be1af73fa}} 
\index{Math@{Math}!transpose@{transpose}}
\index{transpose@{transpose}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{transpose()}{transpose()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_matrix4}{Matrix4}} Ogre\+::\+Transform\+Base\+Real\+::transpose (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Referenced by Ogre\+::operator$\ast$().

\mbox{\Hypertarget{group___math_gab3e9b9df69bd3255f3b64254e66c3321}\label{group___math_gab3e9b9df69bd3255f3b64254e66c3321}} 
\index{Math@{Math}!intersects@{intersects}}
\index{intersects@{intersects}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{intersects()}{intersects()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
{\footnotesize\ttfamily bool Ogre\+::\+Math\+::intersects (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} \&}]{plane,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_axis_aligned_box}{Axis\+Aligned\+Box}} \&}]{box }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



\mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} / box intersection test. 



References Ogre\+::\+Plane\+::\+B\+O\+T\+H\+\_\+\+S\+I\+DE, and Ogre\+::\+Plane\+::get\+Side().

\mbox{\Hypertarget{group___math_gafc5955de7b6ba0dfa860cc751c6321db}\label{group___math_gafc5955de7b6ba0dfa860cc751c6321db}} 
\index{Math@{Math}!intersects@{intersects}}
\index{intersects@{intersects}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{intersects()}{intersects()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
{\footnotesize\ttfamily \mbox{\hyperlink{group___math_ga3f791f5ff19bd8395f0008085e68bf10}{Ray\+Test\+Result}} Ogre\+::\+Math\+::intersects (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_ray}{Ray}} \&}]{ray,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} \&}]{plane }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



\mbox{\hyperlink{class_ogre_1_1_ray}{Ray}} / plane intersection. 



References Ogre\+::\+Ray\+::intersects().



Referenced by Ogre\+::\+Sphere\+::intersects(), Ogre\+::\+Ray\+::intersects(), Ogre\+::\+Plane\+Bounded\+Volume\+::intersects(), and Ogre\+::\+Axis\+Aligned\+Box\+::intersects().

\mbox{\Hypertarget{group___math_ga64ed9272da4fcaccd8b1009a31358c61}\label{group___math_ga64ed9272da4fcaccd8b1009a31358c61}} 
\index{Math@{Math}!intersects@{intersects}}
\index{intersects@{intersects}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{intersects()}{intersects()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
{\footnotesize\ttfamily \mbox{\hyperlink{group___math_ga3f791f5ff19bd8395f0008085e68bf10}{Ray\+Test\+Result}} Ogre\+::\+Math\+::intersects (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_ray}{Ray}} \&}]{ray,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_sphere}{Sphere}} \&}]{sphere,  }\item[{bool}]{discard\+Inside = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



\mbox{\hyperlink{class_ogre_1_1_ray}{Ray}} / sphere intersection. 



References Ogre\+::\+Ray\+::intersects().

\mbox{\Hypertarget{group___math_ga04786a5e338650d6eafc987b394d221c}\label{group___math_ga04786a5e338650d6eafc987b394d221c}} 
\index{Math@{Math}!intersects@{intersects}}
\index{intersects@{intersects}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{intersects()}{intersects()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
{\footnotesize\ttfamily bool Ogre\+::\+Math\+::intersects (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_sphere}{Sphere}} \&}]{sphere,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_plane}{Plane}} \&}]{plane }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



\mbox{\hyperlink{class_ogre_1_1_sphere}{Sphere}} / plane intersection test. 

\begin{DoxyRemark}{Remarks}
NB just do a plane.\+get\+Distance(sphere.\+get\+Center()) for more detail! 
\end{DoxyRemark}


References Ogre\+::\+Sphere\+::intersects().

\mbox{\Hypertarget{group___math_ga4345346666fd54473efb51a8d194f5e0}\label{group___math_ga4345346666fd54473efb51a8d194f5e0}} 
\index{Math@{Math}!midPoint@{midPoint}}
\index{midPoint@{midPoint}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{midPoint()}{midPoint()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 2, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::mid\+Point (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \&}]{vec }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Returns a vector at a point half way between this and the passed in vector. 

\mbox{\Hypertarget{group___math_gaba43517feb82c40ccf1cc571f519866c}\label{group___math_gaba43517feb82c40ccf1cc571f519866c}} 
\index{Math@{Math}!randomDeviant@{randomDeviant}}
\index{randomDeviant@{randomDeviant}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{randomDeviant()}{randomDeviant()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 2, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::random\+Deviant (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_ogre_1_1_radian}{Radian}}}]{angle }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Generates a new random vector which deviates from this vector by a given angle in a random direction. 

\begin{DoxyRemark}{Remarks}
This method assumes that the random number generator has already been seeded appropriately. 
\end{DoxyRemark}

\begin{DoxyParams}{Parameters}
{\em angle} & The angle at which to deviate in radians \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A random vector which deviates from this vector by angle. This vector will not be normalised, normalise it if you wish afterwards. 
\end{DoxyReturn}


References Ogre\+::\+Math\+::\+Cos(), Ogre\+::\+Math\+::\+Range\+Random(), and Ogre\+::\+Math\+::\+Sin().

\mbox{\Hypertarget{group___math_ga7a92915df275eae8161441024d88c815}\label{group___math_ga7a92915df275eae8161441024d88c815}} 
\index{Math@{Math}!angleTo@{angleTo}}
\index{angleTo@{angleTo}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{angleTo()}{angleTo()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 2, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::angle\+To (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \&}]{other }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Gets the oriented angle between 2 vectors. 

\begin{DoxyRemark}{Remarks}
Vectors do not have to be unit-\/length but must represent directions. The angle is comprised between 0 and 2 PI. 
\end{DoxyRemark}


References Ogre\+::\+Math\+::\+T\+W\+O\+\_\+\+PI.

\mbox{\Hypertarget{group___math_ga00e57f3eda32e31277c439e6a9c929a1}\label{group___math_ga00e57f3eda32e31277c439e6a9c929a1}} 
\index{Math@{Math}!perpendicular@{perpendicular}}
\index{perpendicular@{perpendicular}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{perpendicular()}{perpendicular()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_a8542e5da4c0e0bda0d0bf5745329ea88}{Vector2}} \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 2, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::perpendicular (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Generates a vector perpendicular to this vector (eg an \textquotesingle{}up\textquotesingle{} vector). 

\begin{DoxyRemark}{Remarks}
This method will return a vector which is perpendicular to this vector. There are an infinite number of possibilities but this method will guarantee to generate one of them. If you need more control you should use the \mbox{\hyperlink{class_ogre_1_1_quaternion}{Quaternion}} class. 
\end{DoxyRemark}
\mbox{\Hypertarget{group___math_ga5b50a2b2697ec1ac684d66af82a03296}\label{group___math_ga5b50a2b2697ec1ac684d66af82a03296}} 
\index{Math@{Math}!perpendicular@{perpendicular}}
\index{perpendicular@{perpendicular}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{perpendicular()}{perpendicular()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 3, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::perpendicular (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Generates a vector perpendicular to this vector (eg an \textquotesingle{}up\textquotesingle{} vector). 

\begin{DoxyRemark}{Remarks}
This method will return a vector which is perpendicular to this vector. There are an infinite number of possibilities but this method will guarantee to generate one of them. If you need more control you should use the \mbox{\hyperlink{class_ogre_1_1_quaternion}{Quaternion}} class. 
\end{DoxyRemark}


References Ogre\+::\+Math\+::\+Abs(), and Ogre\+::\+Vector$<$ dims, T $>$\+::normalised\+Copy().

\mbox{\Hypertarget{group___math_gafe9157bbe30e69645edd5c3eddea141f}\label{group___math_gafe9157bbe30e69645edd5c3eddea141f}} 
\index{Math@{Math}!crossProduct@{crossProduct}}
\index{crossProduct@{crossProduct}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{crossProduct()}{crossProduct()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 3, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::cross\+Product (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{rk\+Vector }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Calculates the cross-\/product of 2 vectors, i.\+e. 

the vector that lies perpendicular to them both. \begin{DoxyRemark}{Remarks}
The cross-\/product is normally used to calculate the normal vector of a plane, by calculating the cross-\/product of 2 non-\/equivalent vectors which lie on the plane (e.\+g. 2 edges of a triangle). 
\end{DoxyRemark}

\begin{DoxyParams}{Parameters}
{\em rk\+Vector} & \mbox{\hyperlink{class_ogre_1_1_vector}{Vector}} which, together with this one, will be used to calculate the cross-\/product. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A vector which is the result of the cross-\/product. This vector will {\bfseries{N\+OT}} be normalised, to maximise efficiency
\begin{DoxyItemize}
\item call \mbox{\hyperlink{class_ogre_1_1_vector_a2d9b321bec779fc06de480897cda2027}{Vector3\+::normalise}} on the result if you wish this to be done. As for which side the resultant vector will be on, the returned vector will be on the side from which the arc from \textquotesingle{}this\textquotesingle{} to rk\+Vector is anticlockwise, e.\+g. U\+N\+I\+T\+\_\+\+Y.\+cross\+Product(\+U\+N\+I\+T\+\_\+\+Z) = U\+N\+I\+T\+\_\+X, whilst U\+N\+I\+T\+\_\+\+Z.\+cross\+Product(\+U\+N\+I\+T\+\_\+\+Y) = -\/U\+N\+I\+T\+\_\+X. This is because O\+G\+RE uses a right-\/handed coordinate system. 
\end{DoxyItemize}
\end{DoxyReturn}
\begin{DoxyParagraph}{}
For a clearer explanation, look a the left and the bottom edges of your monitor\textquotesingle{}s screen. Assume that the first vector is the left edge and the second vector is the bottom edge, both of them starting from the lower-\/left corner of the screen. The resulting vector is going to be perpendicular to both of them and will go {\itshape inside} the screen, towards the cathode tube (assuming you\textquotesingle{}re using a C\+RT monitor, of course). 
\end{DoxyParagraph}
\mbox{\Hypertarget{group___math_ga929562516cfb30c38030d9df84945bf3}\label{group___math_ga929562516cfb30c38030d9df84945bf3}} 
\index{Math@{Math}!midPoint@{midPoint}}
\index{midPoint@{midPoint}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{midPoint()}{midPoint()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 3, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::mid\+Point (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{vec }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Returns a vector at a point half way between this and the passed in vector. 

\mbox{\Hypertarget{group___math_ga4f54a2dd6b60dd327fcc8347fc4d853d}\label{group___math_ga4f54a2dd6b60dd327fcc8347fc4d853d}} 
\index{Math@{Math}!randomDeviant@{randomDeviant}}
\index{randomDeviant@{randomDeviant}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{randomDeviant()}{randomDeviant()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 3, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::random\+Deviant (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \&}]{angle,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{up = {\ttfamily \mbox{\hyperlink{struct_ogre_1_1_vector_base_3_013_00_01_real_01_4_a683a3ae0ddceb4a01a94c0727ca63362}{Z\+E\+RO}}} }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Generates a new random vector which deviates from this vector by a given angle in a random direction. 

\begin{DoxyRemark}{Remarks}
This method assumes that the random number generator has already been seeded appropriately. 
\end{DoxyRemark}

\begin{DoxyParams}{Parameters}
{\em angle} & The angle at which to deviate \\
\hline
{\em up} & \mbox{\hyperlink{class_ogre_1_1_any}{Any}} vector perpendicular to this one (which could generated by cross-\/product of this vector and any other non-\/colinear vector). If you choose not to provide this the function will derive one on it\textquotesingle{}s own, however if you provide one yourself the function will be faster (this allows you to reuse up vectors if you call this method more than once) \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A random vector which deviates from this vector by angle. This vector will not be normalised, normalise it if you wish afterwards. 
\end{DoxyReturn}


References Ogre\+::\+Quaternion\+::\+From\+Angle\+Axis(), Ogre\+::\+Math\+::\+T\+W\+O\+\_\+\+PI, and Ogre\+::\+Math\+::\+Unit\+Random().

\mbox{\Hypertarget{group___math_gac6ef79da21101ef5a671b0473b849bc3}\label{group___math_gac6ef79da21101ef5a671b0473b849bc3}} 
\index{Math@{Math}!getRotationTo@{getRotationTo}}
\index{getRotationTo@{getRotationTo}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{getRotationTo()}{getRotationTo()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_ogre_1_1_quaternion}{Quaternion}} \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 3, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::get\+Rotation\+To (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{dest,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{fallback\+Axis = {\ttfamily \mbox{\hyperlink{struct_ogre_1_1_vector_base_3_013_00_01_real_01_4_a683a3ae0ddceb4a01a94c0727ca63362}{Z\+E\+RO}}} }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Gets the shortest arc quaternion to rotate this vector to the destination vector. 

\begin{DoxyRemark}{Remarks}
If you call this with a dest vector that is close to the inverse of this vector, we will rotate 180 degrees around the \textquotesingle{}fallback\+Axis\textquotesingle{} (if specified, or a generated axis if not) since in this case A\+NY axis of rotation is valid. 
\end{DoxyRemark}


References Ogre\+::\+Math\+::\+Abs(), Ogre\+::\+Vector$<$ dims, T $>$\+::dot\+Product(), Ogre\+::\+Quaternion\+::\+I\+D\+E\+N\+T\+I\+TY, Ogre\+::\+Quaternion\+::normalise(), Ogre\+::\+Math\+::\+Real\+Equal(), Ogre\+::\+Math\+::\+Sqrt(), and Ogre\+::\+Vector$<$ dims, T $>$\+::squared\+Length().

\mbox{\Hypertarget{group___math_ga24dd46458beb0ea8175bfbf916f09e47}\label{group___math_ga24dd46458beb0ea8175bfbf916f09e47}} 
\index{Math@{Math}!positionCloses@{positionCloses}}
\index{positionCloses@{positionCloses}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{positionCloses()}{positionCloses()}}
{\footnotesize\ttfamily bool \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 3, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::position\+Closes (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{rhs,  }\item[{\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}}]{tolerance = {\ttfamily 1e-\/03f} }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Returns whether this vector is within a positional tolerance of another vector, also take scale of the vectors into account. 


\begin{DoxyParams}{Parameters}
{\em rhs} & The vector to compare with \\
\hline
{\em tolerance} & The amount (related to the scale of vectors) that distance of the vector may vary by and still be considered close \\
\hline
\end{DoxyParams}


References Ogre\+::\+Vector$<$ dims, T $>$\+::squared\+Length().

\mbox{\Hypertarget{group___math_gad67db81d99c63e2483ff8bc314bfd36c}\label{group___math_gad67db81d99c63e2483ff8bc314bfd36c}} 
\index{Math@{Math}!directionEquals@{directionEquals}}
\index{directionEquals@{directionEquals}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{directionEquals()}{directionEquals()}}
{\footnotesize\ttfamily bool \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 3, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::direction\+Equals (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{rhs,  }\item[{const \mbox{\hyperlink{class_ogre_1_1_radian}{Radian}} \&}]{tolerance }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Returns whether this vector is within a directional tolerance of another vector. 


\begin{DoxyParams}{Parameters}
{\em rhs} & The vector to compare with \\
\hline
{\em tolerance} & The maximum angle by which the vectors may vary and still be considered equal \\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
Both vectors should be normalised. 
\end{DoxyNote}


References Ogre\+::\+Math\+::\+Abs(), Ogre\+::\+Math\+::\+A\+Cos(), Ogre\+::\+Vector$<$ dims, T $>$\+::dot\+Product(), and Ogre\+::\+Radian\+::value\+Radians().

\mbox{\Hypertarget{group___math_gad52e72c687842e8475a5f24cde8cd858}\label{group___math_gad52e72c687842e8475a5f24cde8cd858}} 
\index{Math@{Math}!primaryAxis@{primaryAxis}}
\index{primaryAxis@{primaryAxis}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{primaryAxis()}{primaryAxis()}}
{\footnotesize\ttfamily const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \& \mbox{\hyperlink{struct_ogre_1_1_vector_base}{Ogre\+::\+Vector\+Base}}$<$ 3, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$\+::primary\+Axis (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Extract the primary (dominant) axis from this direction vector. 



References Ogre\+::\+Math\+::\+Abs().

\mbox{\Hypertarget{group___math_ga813d02a0ee4c69dab452767fba1cef8a}\label{group___math_ga813d02a0ee4c69dab452767fba1cef8a}} 
\index{Math@{Math}!calculateBasicFaceNormal@{calculateBasicFaceNormal}}
\index{calculateBasicFaceNormal@{calculateBasicFaceNormal}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{calculateBasicFaceNormal()}{calculateBasicFaceNormal()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} Ogre\+::\+Math\+::calculate\+Basic\+Face\+Normal (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v1,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v2,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v3 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Calculate a face normal, no w-\/information. 



References Ogre\+::\+Vector$<$ dims, T $>$\+::normalise().



Referenced by Ogre\+::\+Math\+::calculate\+Face\+Normal(), Ogre\+::\+Lod\+Data\+::\+Triangle\+::compute\+Normal(), and Ogre\+::\+Plane\+::redefine().

\mbox{\Hypertarget{group___math_gae5ba1fde5b6a0056fd637d4e6b781a2a}\label{group___math_gae5ba1fde5b6a0056fd637d4e6b781a2a}} 
\index{Math@{Math}!calculateFaceNormal@{calculateFaceNormal}}
\index{calculateFaceNormal@{calculateFaceNormal}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{calculateFaceNormal()}{calculateFaceNormal()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} Ogre\+::\+Math\+::calculate\+Face\+Normal (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v1,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v2,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v3 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Calculate a face normal, including the w component which is the offset from the origin. 



References Ogre\+::\+Math\+::calculate\+Basic\+Face\+Normal(), and Ogre\+::\+Vector$<$ dims, T $>$\+::dot\+Product().

\mbox{\Hypertarget{group___math_gabcc5bd946f4c1fb73b851493e17b11b3}\label{group___math_gabcc5bd946f4c1fb73b851493e17b11b3}} 
\index{Math@{Math}!calculateBasicFaceNormalWithoutNormalize@{calculateBasicFaceNormalWithoutNormalize}}
\index{calculateBasicFaceNormalWithoutNormalize@{calculateBasicFaceNormalWithoutNormalize}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{calculateBasicFaceNormalWithoutNormalize()}{calculateBasicFaceNormalWithoutNormalize()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} Ogre\+::\+Math\+::calculate\+Basic\+Face\+Normal\+Without\+Normalize (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v1,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v2,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v3 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Calculate a face normal without normalize, no w-\/information. 



Referenced by Ogre\+::\+Math\+::calculate\+Face\+Normal\+Without\+Normalize().

\mbox{\Hypertarget{group___math_gabc24b5e11a3a613f60dc44f6056dc61c}\label{group___math_gabc24b5e11a3a613f60dc44f6056dc61c}} 
\index{Math@{Math}!calculateFaceNormalWithoutNormalize@{calculateFaceNormalWithoutNormalize}}
\index{calculateFaceNormalWithoutNormalize@{calculateFaceNormalWithoutNormalize}!Math@{Math}}
\doxysubsubsection{\texorpdfstring{calculateFaceNormalWithoutNormalize()}{calculateFaceNormalWithoutNormalize()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_a739a289a4d5235f5f509a1795f5ffd5b}{Vector4}} Ogre\+::\+Math\+::calculate\+Face\+Normal\+Without\+Normalize (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v1,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v2,  }\item[{const \mbox{\hyperlink{namespace_ogre_ac94fc4008c1165dea017263fee56b273}{Vector3}} \&}]{v3 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Calculate a face normal without normalize, including the w component which is the offset from the origin. 



References Ogre\+::\+Math\+::calculate\+Basic\+Face\+Normal\+Without\+Normalize(), and Ogre\+::\+Vector$<$ dims, T $>$\+::dot\+Product().

