classcore_1_1ObjectDataAngular.tex 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  1. \hypertarget{classcore_1_1ObjectDataAngular}{}\section{core\+:\+:Object\+Data\+Angular Class Reference}
  2. \label{classcore_1_1ObjectDataAngular}\index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  3. {\ttfamily \#include $<$Object\+Data\+Angular.\+h$>$}
  4. Inheritance diagram for core\+:\+:Object\+Data\+Angular\+:\begin{figure}[H]
  5. \begin{center}
  6. \leavevmode
  7. \includegraphics[height=3.000000cm]{classcore_1_1ObjectDataAngular}
  8. \end{center}
  9. \end{figure}
  10. \subsection*{Public Member Functions}
  11. \begin{DoxyCompactItemize}
  12. \item
  13. \hyperlink{classcore_1_1ObjectDataAngular_a276b02fc7646e3275f1cb81fca7e9a47}{Object\+Data\+Angular} (size\+\_\+t frame\+\_\+index, const cv\+::\+Point2d \&position, double angle)
  14. \item
  15. \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)
  16. \item
  17. void \hyperlink{classcore_1_1ObjectDataAngular_af6772caef2337f3c12a3f52049c4d853}{Set\+Angular\+Weight} (double weight)
  18. \item
  19. double \hyperlink{classcore_1_1ObjectDataAngular_a6c2da5010cd919af3b0f156579d04ef8}{Get\+Angle} () const
  20. \item
  21. double \hyperlink{classcore_1_1ObjectDataAngular_ae1c5db7b9fc06e648450d9388c93a1aa}{Get\+Angular\+Weight} () const
  22. \item
  23. virtual double \hyperlink{classcore_1_1ObjectDataAngular_a2932240c6c082b76f2c04723cdf3e4f9}{Compare\+To} (Object\+Data\+Ptr obj) const override
  24. \item
  25. virtual bool \hyperlink{classcore_1_1ObjectDataAngular_a1ef9168c2384d2038a1dd6e85d0b932f}{Is\+Within\+Constraints} (Object\+Data\+Ptr obj, std\+::unordered\+\_\+map$<$ std\+::string, double $>$ \&constraints) const override
  26. \item
  27. virtual Object\+Data\+Ptr \hyperlink{classcore_1_1ObjectDataAngular_a42962dd1f994b2577133450e755d586e}{Interpolate} (Object\+Data\+Ptr obj, double fraction) const override
  28. \item
  29. virtual void \hyperlink{classcore_1_1ObjectDataAngular_acb4265f6de511238460df118148bc85c}{Visualize} (cv\+::\+Mat \&image, cv\+::\+Scalar \&color) const override
  30. \item
  31. virtual std\+::string \hyperlink{classcore_1_1ObjectDataAngular_a3b419c1d4be886f094b9af94cd839bd4}{To\+String} (char delimiter) const override
  32. \end{DoxyCompactItemize}
  33. \subsection{Detailed Description}
  34. Class for storing a detection in two dimensional space with an rotation angle in radians.
  35. \subsection{Constructor \& Destructor Documentation}
  36. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Object\+Data\+Angular@{Object\+Data\+Angular}}
  37. \index{Object\+Data\+Angular@{Object\+Data\+Angular}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  38. \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 (
  39. \begin{DoxyParamCaption}
  40. \item[{size\+\_\+t}]{frame\+\_\+index, }
  41. \item[{const cv\+::\+Point2d \&}]{position, }
  42. \item[{double}]{angle}
  43. \end{DoxyParamCaption}
  44. )}\hypertarget{classcore_1_1ObjectDataAngular_a276b02fc7646e3275f1cb81fca7e9a47}{}\label{classcore_1_1ObjectDataAngular_a276b02fc7646e3275f1cb81fca7e9a47}
  45. Creates a new object in the given frame, with the given position and the given angle.
  46. \begin{DoxyParams}{Parameters}
  47. {\em frame\+\_\+index} & The index of the frame \\
  48. \hline
  49. {\em position} & The position in two dimensional space \\
  50. \hline
  51. {\em angle} & The rotation angle in radians \\
  52. \hline
  53. \end{DoxyParams}
  54. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Object\+Data\+Angular@{Object\+Data\+Angular}}
  55. \index{Object\+Data\+Angular@{Object\+Data\+Angular}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  56. \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 (
  57. \begin{DoxyParamCaption}
  58. \item[{size\+\_\+t}]{frame\+\_\+index, }
  59. \item[{const cv\+::\+Point2d \&}]{position, }
  60. \item[{double}]{angle, }
  61. \item[{double}]{temporal\+\_\+weight, }
  62. \item[{double}]{spatial\+\_\+weight, }
  63. \item[{double}]{angular\+\_\+weight}
  64. \end{DoxyParamCaption}
  65. )}\hypertarget{classcore_1_1ObjectDataAngular_aae3a8f335e26771d06c8940931d5d654}{}\label{classcore_1_1ObjectDataAngular_aae3a8f335e26771d06c8940931d5d654}
  66. Creates a new object in the given frame, with the given position and the given angle. The weights are used in the comparison calculation.
  67. \begin{DoxyParams}{Parameters}
  68. {\em frame\+\_\+index} & The index of the frame \\
  69. \hline
  70. {\em position} & The position in two dimensional space \\
  71. \hline
  72. {\em angle} & The rotation angle in radians \\
  73. \hline
  74. {\em temporal\+\_\+weight} & The temporal weight \\
  75. \hline
  76. {\em spatial\+\_\+weight} & The spatial weight \\
  77. \hline
  78. {\em angular\+\_\+weight} & The angular weight \\
  79. \hline
  80. \end{DoxyParams}
  81. \subsection{Member Function Documentation}
  82. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Compare\+To@{Compare\+To}}
  83. \index{Compare\+To@{Compare\+To}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  84. \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 (
  85. \begin{DoxyParamCaption}
  86. \item[{Object\+Data\+Ptr}]{obj}
  87. \end{DoxyParamCaption}
  88. ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_a2932240c6c082b76f2c04723cdf3e4f9}{}\label{classcore_1_1ObjectDataAngular_a2932240c6c082b76f2c04723cdf3e4f9}
  89. Compares this object with the given object.
  90. \begin{DoxyParams}{Parameters}
  91. {\em obj} & A pointer to the object to compare this object to \\
  92. \hline
  93. \end{DoxyParams}
  94. \begin{DoxyReturn}{Returns}
  95. A double value indicating the comparison result
  96. \end{DoxyReturn}
  97. Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a68d56bd5f26a41830a87ae32eabf9126}{core\+::\+Object\+Data2D}.
  98. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Get\+Angle@{Get\+Angle}}
  99. \index{Get\+Angle@{Get\+Angle}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  100. \subsubsection[{\texorpdfstring{Get\+Angle() const}{GetAngle() const}}]{\setlength{\rightskip}{0pt plus 5cm}double core\+::\+Object\+Data\+Angular\+::\+Get\+Angle (
  101. \begin{DoxyParamCaption}
  102. {}
  103. \end{DoxyParamCaption}
  104. ) const}\hypertarget{classcore_1_1ObjectDataAngular_a6c2da5010cd919af3b0f156579d04ef8}{}\label{classcore_1_1ObjectDataAngular_a6c2da5010cd919af3b0f156579d04ef8}
  105. Gets the rotation angle in radians. \begin{DoxyReturn}{Returns}
  106. The rotation angle in radians
  107. \end{DoxyReturn}
  108. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Get\+Angular\+Weight@{Get\+Angular\+Weight}}
  109. \index{Get\+Angular\+Weight@{Get\+Angular\+Weight}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  110. \subsubsection[{\texorpdfstring{Get\+Angular\+Weight() const}{GetAngularWeight() const}}]{\setlength{\rightskip}{0pt plus 5cm}double core\+::\+Object\+Data\+Angular\+::\+Get\+Angular\+Weight (
  111. \begin{DoxyParamCaption}
  112. {}
  113. \end{DoxyParamCaption}
  114. ) const}\hypertarget{classcore_1_1ObjectDataAngular_ae1c5db7b9fc06e648450d9388c93a1aa}{}\label{classcore_1_1ObjectDataAngular_ae1c5db7b9fc06e648450d9388c93a1aa}
  115. Gets the angular weight. \begin{DoxyReturn}{Returns}
  116. The angular weight
  117. \end{DoxyReturn}
  118. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Interpolate@{Interpolate}}
  119. \index{Interpolate@{Interpolate}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  120. \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 (
  121. \begin{DoxyParamCaption}
  122. \item[{Object\+Data\+Ptr}]{obj, }
  123. \item[{double}]{fraction}
  124. \end{DoxyParamCaption}
  125. ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_a42962dd1f994b2577133450e755d586e}{}\label{classcore_1_1ObjectDataAngular_a42962dd1f994b2577133450e755d586e}
  126. Linearly interpolates between this and the given object. Creates a new object to fit between the two objects.
  127. \begin{DoxyParams}{Parameters}
  128. {\em obj} & A pointer to the target object \\
  129. \hline
  130. {\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. \\
  131. \hline
  132. \end{DoxyParams}
  133. \begin{DoxyReturn}{Returns}
  134. The interpolated object
  135. \end{DoxyReturn}
  136. Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a59b974e09f74f0a2640e3152893fe79f}{core\+::\+Object\+Data2D}.
  137. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Is\+Within\+Constraints@{Is\+Within\+Constraints}}
  138. \index{Is\+Within\+Constraints@{Is\+Within\+Constraints}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  139. \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 (
  140. \begin{DoxyParamCaption}
  141. \item[{Object\+Data\+Ptr}]{obj, }
  142. \item[{std\+::unordered\+\_\+map$<$ std\+::string, double $>$ \&}]{constraints}
  143. \end{DoxyParamCaption}
  144. ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_a1ef9168c2384d2038a1dd6e85d0b932f}{}\label{classcore_1_1ObjectDataAngular_a1ef9168c2384d2038a1dd6e85d0b932f}
  145. Checks if the difference between this object and the specified object is within the constraints specified. The difference is calculated for each constraint separately.
  146. \begin{DoxyParams}{Parameters}
  147. {\em obj} & The object to get the difference to \\
  148. \hline
  149. {\em constraints} & The constraints to assure \\
  150. \hline
  151. \end{DoxyParams}
  152. Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a63e855919a72462225a8e69140f1389b}{core\+::\+Object\+Data2D}.
  153. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Set\+Angular\+Weight@{Set\+Angular\+Weight}}
  154. \index{Set\+Angular\+Weight@{Set\+Angular\+Weight}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  155. \subsubsection[{\texorpdfstring{Set\+Angular\+Weight(double weight)}{SetAngularWeight(double weight)}}]{\setlength{\rightskip}{0pt plus 5cm}void core\+::\+Object\+Data\+Angular\+::\+Set\+Angular\+Weight (
  156. \begin{DoxyParamCaption}
  157. \item[{double}]{weight}
  158. \end{DoxyParamCaption}
  159. )}\hypertarget{classcore_1_1ObjectDataAngular_af6772caef2337f3c12a3f52049c4d853}{}\label{classcore_1_1ObjectDataAngular_af6772caef2337f3c12a3f52049c4d853}
  160. Sets the angular weight.
  161. \begin{DoxyParams}{Parameters}
  162. {\em weight} & The angular weight \\
  163. \hline
  164. \end{DoxyParams}
  165. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!To\+String@{To\+String}}
  166. \index{To\+String@{To\+String}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  167. \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 (
  168. \begin{DoxyParamCaption}
  169. \item[{char}]{delimiter}
  170. \end{DoxyParamCaption}
  171. ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_a3b419c1d4be886f094b9af94cd839bd4}{}\label{classcore_1_1ObjectDataAngular_a3b419c1d4be886f094b9af94cd839bd4}
  172. Returns a string representing the values of this object data.
  173. \begin{DoxyParams}{Parameters}
  174. {\em delimiter} & The delimiter used to separate values \\
  175. \hline
  176. \end{DoxyParams}
  177. \begin{DoxyReturn}{Returns}
  178. The string containing the values
  179. \end{DoxyReturn}
  180. Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a72b2f50ca82ebd9269e1c29cdac6d92a}{core\+::\+Object\+Data2D}.
  181. \index{core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}!Visualize@{Visualize}}
  182. \index{Visualize@{Visualize}!core\+::\+Object\+Data\+Angular@{core\+::\+Object\+Data\+Angular}}
  183. \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 (
  184. \begin{DoxyParamCaption}
  185. \item[{cv\+::\+Mat \&}]{image, }
  186. \item[{cv\+::\+Scalar \&}]{color}
  187. \end{DoxyParamCaption}
  188. ) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataAngular_acb4265f6de511238460df118148bc85c}{}\label{classcore_1_1ObjectDataAngular_acb4265f6de511238460df118148bc85c}
  189. Visualizes the object in the given image with the given color. This method does nothing, it needs to be overwritten to visualize something.
  190. \begin{DoxyParams}{Parameters}
  191. {\em image} & The image to write into \\
  192. \hline
  193. {\em color} & The color to use \\
  194. \hline
  195. \end{DoxyParams}
  196. Reimplemented from \hyperlink{classcore_1_1ObjectData2D_aff4e8539559f4ce50a7f43b733d6c512}{core\+::\+Object\+Data2D}.
  197. The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
  198. \item
  199. core/Object\+Data\+Angular.\+h\item
  200. core/Object\+Data\+Angular.\+cpp\end{DoxyCompactItemize}