\hypertarget{classcore_1_1ObjectData2D}{}\section{core\+:\+:Object\+Data2D Class Reference} \label{classcore_1_1ObjectData2D}\index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} {\ttfamily \#include $<$Object\+Data2\+D.\+h$>$} Inheritance diagram for core\+:\+:Object\+Data2D\+:\begin{figure}[H] \begin{center} \leavevmode \includegraphics[height=3.000000cm]{classcore_1_1ObjectData2D} \end{center} \end{figure} \subsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \hyperlink{classcore_1_1ObjectData2D_adc35e5b8597ea47ad3568259c2e800c6}{Object\+Data2D} (size\+\_\+t frame\+\_\+index, cv\+::\+Point2d position) \item void \hyperlink{classcore_1_1ObjectData2D_a2850785393bc7a5250427bbda84c1b58}{Set\+Temporal\+Weight} (double weight) \item void \hyperlink{classcore_1_1ObjectData2D_ad62bf8b2362e8f3547f8040a144fa346}{Set\+Spatial\+Weight} (double weight) \item cv\+::\+Point2d \hyperlink{classcore_1_1ObjectData2D_ab3c0694ec38f2d59a4092f46f876498b}{Get\+Position} () const \item double \hyperlink{classcore_1_1ObjectData2D_a35381efb292d20f2b181558c129269f3}{Get\+Temporal\+Weight} () const \item double \hyperlink{classcore_1_1ObjectData2D_a688087ccdd999d7e16f5c68cc460209d}{Get\+Spatial\+Weight} () const \item virtual double \hyperlink{classcore_1_1ObjectData2D_a68d56bd5f26a41830a87ae32eabf9126}{Compare\+To} (Object\+Data\+Ptr obj) const override \item virtual bool \hyperlink{classcore_1_1ObjectData2D_a63e855919a72462225a8e69140f1389b}{Is\+Within\+Constraints} (Object\+Data\+Ptr obj, std\+::unordered\+\_\+map$<$ std\+::string, double $>$ \&constraints) const override \item virtual Object\+Data\+Ptr \hyperlink{classcore_1_1ObjectData2D_a59b974e09f74f0a2640e3152893fe79f}{Interpolate} (Object\+Data\+Ptr obj, double fraction) const override \item virtual void \hyperlink{classcore_1_1ObjectData2D_aff4e8539559f4ce50a7f43b733d6c512}{Visualize} (cv\+::\+Mat \&image, cv\+::\+Scalar \&color) const override \item virtual std\+::string \hyperlink{classcore_1_1ObjectData2D_a72b2f50ca82ebd9269e1c29cdac6d92a}{To\+String} (char delimiter) const override \end{DoxyCompactItemize} \subsection{Detailed Description} Class for storing a detection in two dimensional space. \subsection{Constructor \& Destructor Documentation} \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Object\+Data2D@{Object\+Data2D}} \index{Object\+Data2D@{Object\+Data2D}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \subsubsection[{\texorpdfstring{Object\+Data2\+D(size\+\_\+t frame\+\_\+index, cv\+::\+Point2d position)}{ObjectData2D(size\_t frame\_index, cv::Point2d position)}}]{\setlength{\rightskip}{0pt plus 5cm}core\+::\+Object\+Data2\+D\+::\+Object\+Data2D ( \begin{DoxyParamCaption} \item[{size\+\_\+t}]{frame\+\_\+index, } \item[{cv\+::\+Point2d}]{position} \end{DoxyParamCaption} )}\hypertarget{classcore_1_1ObjectData2D_adc35e5b8597ea47ad3568259c2e800c6}{}\label{classcore_1_1ObjectData2D_adc35e5b8597ea47ad3568259c2e800c6} Creates a new detection with the given index and position. \begin{DoxyParams}{Parameters} {\em frame\+\_\+index} & The frame index \\ \hline {\em position} & The position in three dimensional space \\ \hline \end{DoxyParams} \subsection{Member Function Documentation} \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Compare\+To@{Compare\+To}} \index{Compare\+To@{Compare\+To}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \subsubsection[{\texorpdfstring{Compare\+To(\+Object\+Data\+Ptr obj) const override}{CompareTo(ObjectDataPtr obj) const override}}]{\setlength{\rightskip}{0pt plus 5cm}double core\+::\+Object\+Data2\+D\+::\+Compare\+To ( \begin{DoxyParamCaption} \item[{Object\+Data\+Ptr}]{obj} \end{DoxyParamCaption} ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectData2D_a68d56bd5f26a41830a87ae32eabf9126}{}\label{classcore_1_1ObjectData2D_a68d56bd5f26a41830a87ae32eabf9126} 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_1ObjectData_afbf7a1e87235f1b204d4d2eb8a37a9a6}{core\+::\+Object\+Data}. Reimplemented in \hyperlink{classcore_1_1ObjectDataAngular_a2932240c6c082b76f2c04723cdf3e4f9}{core\+::\+Object\+Data\+Angular}, and \hyperlink{classcore_1_1ObjectDataBox_a163c57338778f957ce514611c509558a}{core\+::\+Object\+Data\+Box}. \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Get\+Position@{Get\+Position}} \index{Get\+Position@{Get\+Position}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \subsubsection[{\texorpdfstring{Get\+Position() const}{GetPosition() const}}]{\setlength{\rightskip}{0pt plus 5cm}cv\+::\+Point2d core\+::\+Object\+Data2\+D\+::\+Get\+Position ( \begin{DoxyParamCaption} {} \end{DoxyParamCaption} ) const}\hypertarget{classcore_1_1ObjectData2D_ab3c0694ec38f2d59a4092f46f876498b}{}\label{classcore_1_1ObjectData2D_ab3c0694ec38f2d59a4092f46f876498b} Gets the position in two dimensional space. \begin{DoxyReturn}{Returns} The position \end{DoxyReturn} \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Get\+Spatial\+Weight@{Get\+Spatial\+Weight}} \index{Get\+Spatial\+Weight@{Get\+Spatial\+Weight}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \subsubsection[{\texorpdfstring{Get\+Spatial\+Weight() const}{GetSpatialWeight() const}}]{\setlength{\rightskip}{0pt plus 5cm}double core\+::\+Object\+Data2\+D\+::\+Get\+Spatial\+Weight ( \begin{DoxyParamCaption} {} \end{DoxyParamCaption} ) const}\hypertarget{classcore_1_1ObjectData2D_a688087ccdd999d7e16f5c68cc460209d}{}\label{classcore_1_1ObjectData2D_a688087ccdd999d7e16f5c68cc460209d} Gets the spatial weight \begin{DoxyReturn}{Returns} The spatial weight \end{DoxyReturn} \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Get\+Temporal\+Weight@{Get\+Temporal\+Weight}} \index{Get\+Temporal\+Weight@{Get\+Temporal\+Weight}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \subsubsection[{\texorpdfstring{Get\+Temporal\+Weight() const}{GetTemporalWeight() const}}]{\setlength{\rightskip}{0pt plus 5cm}double core\+::\+Object\+Data2\+D\+::\+Get\+Temporal\+Weight ( \begin{DoxyParamCaption} {} \end{DoxyParamCaption} ) const}\hypertarget{classcore_1_1ObjectData2D_a35381efb292d20f2b181558c129269f3}{}\label{classcore_1_1ObjectData2D_a35381efb292d20f2b181558c129269f3} Gets the temporal weight. \begin{DoxyReturn}{Returns} The temporal weight \end{DoxyReturn} \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Interpolate@{Interpolate}} \index{Interpolate@{Interpolate}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \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\+Data2\+D\+::\+Interpolate ( \begin{DoxyParamCaption} \item[{Object\+Data\+Ptr}]{obj, } \item[{double}]{fraction} \end{DoxyParamCaption} ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectData2D_a59b974e09f74f0a2640e3152893fe79f}{}\label{classcore_1_1ObjectData2D_a59b974e09f74f0a2640e3152893fe79f} 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_1ObjectData_ad681915317decab76c384a635fc8444e}{core\+::\+Object\+Data}. Reimplemented in \hyperlink{classcore_1_1ObjectDataAngular_a42962dd1f994b2577133450e755d586e}{core\+::\+Object\+Data\+Angular}, and \hyperlink{classcore_1_1ObjectDataBox_ab2816bceb771dd7442e6c29193dfe267}{core\+::\+Object\+Data\+Box}. \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Is\+Within\+Constraints@{Is\+Within\+Constraints}} \index{Is\+Within\+Constraints@{Is\+Within\+Constraints}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \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\+Data2\+D\+::\+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_1ObjectData2D_a63e855919a72462225a8e69140f1389b}{}\label{classcore_1_1ObjectData2D_a63e855919a72462225a8e69140f1389b} 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_1ObjectData_affa5d25fa3d2c04a571a7e095f62bacb}{core\+::\+Object\+Data}. Reimplemented in \hyperlink{classcore_1_1ObjectDataAngular_a1ef9168c2384d2038a1dd6e85d0b932f}{core\+::\+Object\+Data\+Angular}, and \hyperlink{classcore_1_1ObjectDataBox_a04f4b780b79491270e4838f7504c1917}{core\+::\+Object\+Data\+Box}. \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Set\+Spatial\+Weight@{Set\+Spatial\+Weight}} \index{Set\+Spatial\+Weight@{Set\+Spatial\+Weight}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \subsubsection[{\texorpdfstring{Set\+Spatial\+Weight(double weight)}{SetSpatialWeight(double weight)}}]{\setlength{\rightskip}{0pt plus 5cm}void core\+::\+Object\+Data2\+D\+::\+Set\+Spatial\+Weight ( \begin{DoxyParamCaption} \item[{double}]{weight} \end{DoxyParamCaption} )}\hypertarget{classcore_1_1ObjectData2D_ad62bf8b2362e8f3547f8040a144fa346}{}\label{classcore_1_1ObjectData2D_ad62bf8b2362e8f3547f8040a144fa346} Sets the spatial weight \begin{DoxyParams}{Parameters} {\em weight} & The spatial weight \\ \hline \end{DoxyParams} \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Set\+Temporal\+Weight@{Set\+Temporal\+Weight}} \index{Set\+Temporal\+Weight@{Set\+Temporal\+Weight}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \subsubsection[{\texorpdfstring{Set\+Temporal\+Weight(double weight)}{SetTemporalWeight(double weight)}}]{\setlength{\rightskip}{0pt plus 5cm}void core\+::\+Object\+Data2\+D\+::\+Set\+Temporal\+Weight ( \begin{DoxyParamCaption} \item[{double}]{weight} \end{DoxyParamCaption} )}\hypertarget{classcore_1_1ObjectData2D_a2850785393bc7a5250427bbda84c1b58}{}\label{classcore_1_1ObjectData2D_a2850785393bc7a5250427bbda84c1b58} Sets the temporal weight. \begin{DoxyParams}{Parameters} {\em weight} & The temporal weight \\ \hline \end{DoxyParams} \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!To\+String@{To\+String}} \index{To\+String@{To\+String}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \subsubsection[{\texorpdfstring{To\+String(char delimiter) const override}{ToString(char delimiter) const override}}]{\setlength{\rightskip}{0pt plus 5cm}std\+::string core\+::\+Object\+Data2\+D\+::\+To\+String ( \begin{DoxyParamCaption} \item[{char}]{delimiter} \end{DoxyParamCaption} ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectData2D_a72b2f50ca82ebd9269e1c29cdac6d92a}{}\label{classcore_1_1ObjectData2D_a72b2f50ca82ebd9269e1c29cdac6d92a} 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_1ObjectData_a1d864ed88355e636c5783c18c9ab0555}{core\+::\+Object\+Data}. Reimplemented in \hyperlink{classcore_1_1ObjectDataAngular_a3b419c1d4be886f094b9af94cd839bd4}{core\+::\+Object\+Data\+Angular}, and \hyperlink{classcore_1_1ObjectDataBox_a0af10953ccecb7089a3a2841ec7419b9}{core\+::\+Object\+Data\+Box}. \index{core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}!Visualize@{Visualize}} \index{Visualize@{Visualize}!core\+::\+Object\+Data2D@{core\+::\+Object\+Data2D}} \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\+Data2\+D\+::\+Visualize ( \begin{DoxyParamCaption} \item[{cv\+::\+Mat \&}]{image, } \item[{cv\+::\+Scalar \&}]{color} \end{DoxyParamCaption} ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectData2D_aff4e8539559f4ce50a7f43b733d6c512}{}\label{classcore_1_1ObjectData2D_aff4e8539559f4ce50a7f43b733d6c512} 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_1ObjectData_aae2c4fceddc529570dbe8909309f9961}{core\+::\+Object\+Data}. Reimplemented in \hyperlink{classcore_1_1ObjectDataAngular_acb4265f6de511238460df118148bc85c}{core\+::\+Object\+Data\+Angular}, and \hyperlink{classcore_1_1ObjectDataBox_ab29bacb20c258ba572d0372469ec5523}{core\+::\+Object\+Data\+Box}. The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} \item core/Object\+Data2\+D.\+h\item core/Object\+Data2\+D.\+cpp\end{DoxyCompactItemize}