\hypertarget{classcore_1_1ObjectDataAngular}{}\section{core\+:\+:Object\+Data\+Angular Class Reference} \label{classcore_1_1ObjectDataAngular}\index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} {\ttfamily \#include $<$Object\+Data\+Angular.\+h$>$} Inheritance diagram for core\+:\+:Object\+Data\+Angular\+:\begin{figure}[H] \begin{center} \leavevmode \includegraphics[height=3.000000cm]{classcore_1_1ObjectDataAngular} \end{center} \end{figure} \subsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \hyperlink{classcore_1_1ObjectDataAngular_a276b02fc7646e3275f1cb81fca7e9a47}{Object\+Data\+Angular} (size\+\_\+t frame\+\_\+index, const cv\+::\+Point2d \&position, double angle) \item \hyperlink{classcore_1_1ObjectDataAngular_aae3a8f335e26771d06c8940931d5d654}{Object\+Data\+Angular} (size\+\_\+t frame\+\_\+index, const cv\+::\+Point2d \&position, double angle, double temporal\+\_\+weight, double spatial\+\_\+weight, double angular\+\_\+weight) \item void \hyperlink{classcore_1_1ObjectDataAngular_af6772caef2337f3c12a3f52049c4d853}{Set\+Angular\+Weight} (double weight) \item double \hyperlink{classcore_1_1ObjectDataAngular_a6c2da5010cd919af3b0f156579d04ef8}{Get\+Angle} () const \item double \hyperlink{classcore_1_1ObjectDataAngular_ae1c5db7b9fc06e648450d9388c93a1aa}{Get\+Angular\+Weight} () const \item virtual double \hyperlink{classcore_1_1ObjectDataAngular_a2932240c6c082b76f2c04723cdf3e4f9}{Compare\+To} (Object\+Data\+Ptr obj) const override \item virtual bool \hyperlink{classcore_1_1ObjectDataAngular_a1ef9168c2384d2038a1dd6e85d0b932f}{Is\+Within\+Constraints} (Object\+Data\+Ptr obj, std\+::unordered\+\_\+map$<$ std\+::string, double $>$ \&constraints) const override \item virtual Object\+Data\+Ptr \hyperlink{classcore_1_1ObjectDataAngular_a42962dd1f994b2577133450e755d586e}{Interpolate} (Object\+Data\+Ptr obj, double fraction) const override \item virtual void \hyperlink{classcore_1_1ObjectDataAngular_acb4265f6de511238460df118148bc85c}{Visualize} (cv\+::\+Mat \&image, cv\+::\+Scalar \&color) const override \item virtual std\+::string \hyperlink{classcore_1_1ObjectDataAngular_a3b419c1d4be886f094b9af94cd839bd4}{To\+String} (char delimiter) const override \end{DoxyCompactItemize} \subsection{Detailed Description} Class for storing a detection in two dimensional space with an rotation angle in radians. \subsection{Constructor \& Destructor Documentation} \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Object\+Data\+Angular@{Object\+Data\+Angular}} \index{Object\+Data\+Angular@{Object\+Data\+Angular}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{Object\+Data\+Angular(size\+\_\+t frame\+\_\+index, const cv\+::\+Point2d \&position, double angle)}{ObjectDataAngular(size\_t frame\_index, const cv::Point2d \&position, double angle)}}]{\setlength{\rightskip}{0pt plus 5cm}core\+::\+Object\+Data\+Angular\+::\+Object\+Data\+Angular ( \begin{DoxyParamCaption} \item[{size\+\_\+t}]{frame\+\_\+index, } \item[{const cv\+::\+Point2d \&}]{position, } \item[{double}]{angle} \end{DoxyParamCaption} )}\hypertarget{classcore_1_1ObjectDataAngular_a276b02fc7646e3275f1cb81fca7e9a47}{}\label{classcore_1_1ObjectDataAngular_a276b02fc7646e3275f1cb81fca7e9a47} Creates a new object in the given frame, with the given position and the given angle. \begin{DoxyParams}{Parameters} {\em frame\+\_\+index} & The index of the frame \\ \hline {\em position} & The position in two dimensional space \\ \hline {\em angle} & The rotation angle in radians \\ \hline \end{DoxyParams} \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Object\+Data\+Angular@{Object\+Data\+Angular}} \index{Object\+Data\+Angular@{Object\+Data\+Angular}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{Object\+Data\+Angular(size\+\_\+t frame\+\_\+index, const cv\+::\+Point2d \&position, double angle, double temporal\+\_\+weight, double spatial\+\_\+weight, double angular\+\_\+weight)}{ObjectDataAngular(size\_t frame\_index, const cv::Point2d \&position, double angle, double temporal\_weight, double spatial\_weight, double angular\_weight)}}]{\setlength{\rightskip}{0pt plus 5cm}core\+::\+Object\+Data\+Angular\+::\+Object\+Data\+Angular ( \begin{DoxyParamCaption} \item[{size\+\_\+t}]{frame\+\_\+index, } \item[{const cv\+::\+Point2d \&}]{position, } \item[{double}]{angle, } \item[{double}]{temporal\+\_\+weight, } \item[{double}]{spatial\+\_\+weight, } \item[{double}]{angular\+\_\+weight} \end{DoxyParamCaption} )}\hypertarget{classcore_1_1ObjectDataAngular_aae3a8f335e26771d06c8940931d5d654}{}\label{classcore_1_1ObjectDataAngular_aae3a8f335e26771d06c8940931d5d654} Creates a new object in the given frame, with the given position and the given angle. The weights are used in the comparison calculation. \begin{DoxyParams}{Parameters} {\em frame\+\_\+index} & The index of the frame \\ \hline {\em position} & The position in two dimensional space \\ \hline {\em angle} & The rotation angle in radians \\ \hline {\em temporal\+\_\+weight} & The temporal weight \\ \hline {\em spatial\+\_\+weight} & The spatial weight \\ \hline {\em angular\+\_\+weight} & The angular weight \\ \hline \end{DoxyParams} \subsection{Member Function Documentation} \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Compare\+To@{Compare\+To}} \index{Compare\+To@{Compare\+To}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{Compare\+To(\+Object\+Data\+Ptr obj) const override}{CompareTo(ObjectDataPtr obj) const override}}]{\setlength{\rightskip}{0pt plus 5cm}double core\+::\+Object\+Data\+Angular\+::\+Compare\+To ( \begin{DoxyParamCaption} \item[{Object\+Data\+Ptr}]{obj} \end{DoxyParamCaption} ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_a2932240c6c082b76f2c04723cdf3e4f9}{}\label{classcore_1_1ObjectDataAngular_a2932240c6c082b76f2c04723cdf3e4f9} Compares this object with the given object. \begin{DoxyParams}{Parameters} {\em obj} & A pointer to the object to compare this object to \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} A double value indicating the comparison result \end{DoxyReturn} Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a68d56bd5f26a41830a87ae32eabf9126}{core\+::\+Object\+Data2D}. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Get\+Angle@{Get\+Angle}} \index{Get\+Angle@{Get\+Angle}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{Get\+Angle() const}{GetAngle() const}}]{\setlength{\rightskip}{0pt plus 5cm}double core\+::\+Object\+Data\+Angular\+::\+Get\+Angle ( \begin{DoxyParamCaption} {} \end{DoxyParamCaption} ) const}\hypertarget{classcore_1_1ObjectDataAngular_a6c2da5010cd919af3b0f156579d04ef8}{}\label{classcore_1_1ObjectDataAngular_a6c2da5010cd919af3b0f156579d04ef8} Gets the rotation angle in radians. \begin{DoxyReturn}{Returns} The rotation angle in radians \end{DoxyReturn} \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Get\+Angular\+Weight@{Get\+Angular\+Weight}} \index{Get\+Angular\+Weight@{Get\+Angular\+Weight}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{Get\+Angular\+Weight() const}{GetAngularWeight() const}}]{\setlength{\rightskip}{0pt plus 5cm}double core\+::\+Object\+Data\+Angular\+::\+Get\+Angular\+Weight ( \begin{DoxyParamCaption} {} \end{DoxyParamCaption} ) const}\hypertarget{classcore_1_1ObjectDataAngular_ae1c5db7b9fc06e648450d9388c93a1aa}{}\label{classcore_1_1ObjectDataAngular_ae1c5db7b9fc06e648450d9388c93a1aa} Gets the angular weight. \begin{DoxyReturn}{Returns} The angular weight \end{DoxyReturn} \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Interpolate@{Interpolate}} \index{Interpolate@{Interpolate}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{Interpolate(\+Object\+Data\+Ptr obj, double fraction) const override}{Interpolate(ObjectDataPtr obj, double fraction) const override}}]{\setlength{\rightskip}{0pt plus 5cm}Object\+Data\+Ptr core\+::\+Object\+Data\+Angular\+::\+Interpolate ( \begin{DoxyParamCaption} \item[{Object\+Data\+Ptr}]{obj, } \item[{double}]{fraction} \end{DoxyParamCaption} ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_a42962dd1f994b2577133450e755d586e}{}\label{classcore_1_1ObjectDataAngular_a42962dd1f994b2577133450e755d586e} Linearly interpolates between this and the given object. Creates a new object to fit between the two objects. \begin{DoxyParams}{Parameters} {\em obj} & A pointer to the target object \\ \hline {\em fraction} & Describes where the interpolation should be done. A fraction of zero is a clone of this object, a fraction of one is a clone of the target object. \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} The interpolated object \end{DoxyReturn} Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a59b974e09f74f0a2640e3152893fe79f}{core\+::\+Object\+Data2D}. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Is\+Within\+Constraints@{Is\+Within\+Constraints}} \index{Is\+Within\+Constraints@{Is\+Within\+Constraints}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{Is\+Within\+Constraints(\+Object\+Data\+Ptr obj, std\+::unordered\+\_\+map$<$ std\+::string, double $>$ \&constraints) const override}{IsWithinConstraints(ObjectDataPtr obj, std::unordered\_map< std::string, double > \&constraints) const override}}]{\setlength{\rightskip}{0pt plus 5cm}bool core\+::\+Object\+Data\+Angular\+::\+Is\+Within\+Constraints ( \begin{DoxyParamCaption} \item[{Object\+Data\+Ptr}]{obj, } \item[{std\+::unordered\+\_\+map$<$ std\+::string, double $>$ \&}]{constraints} \end{DoxyParamCaption} ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_a1ef9168c2384d2038a1dd6e85d0b932f}{}\label{classcore_1_1ObjectDataAngular_a1ef9168c2384d2038a1dd6e85d0b932f} Checks if the difference between this object and the specified object is within the constraints specified. The difference is calculated for each constraint separately. \begin{DoxyParams}{Parameters} {\em obj} & The object to get the difference to \\ \hline {\em constraints} & The constraints to assure \\ \hline \end{DoxyParams} Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a63e855919a72462225a8e69140f1389b}{core\+::\+Object\+Data2D}. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Set\+Angular\+Weight@{Set\+Angular\+Weight}} \index{Set\+Angular\+Weight@{Set\+Angular\+Weight}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{Set\+Angular\+Weight(double weight)}{SetAngularWeight(double weight)}}]{\setlength{\rightskip}{0pt plus 5cm}void core\+::\+Object\+Data\+Angular\+::\+Set\+Angular\+Weight ( \begin{DoxyParamCaption} \item[{double}]{weight} \end{DoxyParamCaption} )}\hypertarget{classcore_1_1ObjectDataAngular_af6772caef2337f3c12a3f52049c4d853}{}\label{classcore_1_1ObjectDataAngular_af6772caef2337f3c12a3f52049c4d853} Sets the angular weight. \begin{DoxyParams}{Parameters} {\em weight} & The angular weight \\ \hline \end{DoxyParams} \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!To\+String@{To\+String}} \index{To\+String@{To\+String}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{To\+String(char delimiter) const override}{ToString(char delimiter) const override}}]{\setlength{\rightskip}{0pt plus 5cm}std\+::string core\+::\+Object\+Data\+Angular\+::\+To\+String ( \begin{DoxyParamCaption} \item[{char}]{delimiter} \end{DoxyParamCaption} ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_a3b419c1d4be886f094b9af94cd839bd4}{}\label{classcore_1_1ObjectDataAngular_a3b419c1d4be886f094b9af94cd839bd4} Returns a string representing the values of this object data. \begin{DoxyParams}{Parameters} {\em delimiter} & The delimiter used to separate values \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} The string containing the values \end{DoxyReturn} Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a72b2f50ca82ebd9269e1c29cdac6d92a}{core\+::\+Object\+Data2D}. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Visualize@{Visualize}} \index{Visualize@{Visualize}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}} \subsubsection[{\texorpdfstring{Visualize(cv\+::\+Mat \&image, cv\+::\+Scalar \&color) const override}{Visualize(cv::Mat \&image, cv::Scalar \&color) const override}}]{\setlength{\rightskip}{0pt plus 5cm}void core\+::\+Object\+Data\+Angular\+::\+Visualize ( \begin{DoxyParamCaption} \item[{cv\+::\+Mat \&}]{image, } \item[{cv\+::\+Scalar \&}]{color} \end{DoxyParamCaption} ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_acb4265f6de511238460df118148bc85c}{}\label{classcore_1_1ObjectDataAngular_acb4265f6de511238460df118148bc85c} Visualizes the object in the given image with the given color. This method does nothing, it needs to be overwritten to visualize something. \begin{DoxyParams}{Parameters} {\em image} & The image to write into \\ \hline {\em color} & The color to use \\ \hline \end{DoxyParams} Reimplemented from \hyperlink{classcore_1_1ObjectData2D_aff4e8539559f4ce50a7f43b733d6c512}{core\+::\+Object\+Data2D}. The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} \item core/Object\+Data\+Angular.\+h\item core/Object\+Data\+Angular.\+cpp\end{DoxyCompactItemize}