No Description

class_q_c_p_item_tracer.tex 27KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338
  1. \hypertarget{class_q_c_p_item_tracer}{}\section{Referencia de la Clase Q\+C\+P\+Item\+Tracer}
  2. \label{class_q_c_p_item_tracer}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  3. Item that sticks to \hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph} data points.
  4. Diagrama de herencias de Q\+C\+P\+Item\+Tracer\begin{figure}[H]
  5. \begin{center}
  6. \leavevmode
  7. \includegraphics[height=4.000000cm]{class_q_c_p_item_tracer}
  8. \end{center}
  9. \end{figure}
  10. \subsection*{Tipos públicos}
  11. \begin{DoxyCompactItemize}
  12. \item
  13. enum \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Tracer\+Style} \{ \\*
  14. \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}{ts\+None},
  15. \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a3323fb04017146e4885e080a459472fa}{ts\+Plus},
  16. \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500af562ec81ac3ba99e26ef8540cf1ec16f}{ts\+Crosshair},
  17. \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500ae2252c28f4842880d71e9f94e69de94e}{ts\+Circle},
  18. \\*
  19. \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a4ed5f01f2c5fd86d980366d79f481b9b}{ts\+Square}
  20. \}
  21. \end{DoxyCompactItemize}
  22. \subsection*{Métodos públicos}
  23. \begin{DoxyCompactItemize}
  24. \item
  25. \hyperlink{class_q_c_p_item_tracer_adc5ca846eeac323db4aa1fc4081e36be}{Q\+C\+P\+Item\+Tracer} (\hyperlink{class_q_custom_plot}{Q\+Custom\+Plot} $\ast$parent\+Plot)
  26. \item
  27. \hypertarget{class_q_c_p_item_tracer_a1f51b61e98c276298a0874d5e89707f0}{}Q\+Pen {\bfseries pen} () const \label{class_q_c_p_item_tracer_a1f51b61e98c276298a0874d5e89707f0}
  28. \item
  29. \hypertarget{class_q_c_p_item_tracer_ad75e5d2d868dbedc176f7911091f379b}{}Q\+Pen {\bfseries selected\+Pen} () const \label{class_q_c_p_item_tracer_ad75e5d2d868dbedc176f7911091f379b}
  30. \item
  31. \hypertarget{class_q_c_p_item_tracer_af07527750cfb6afc3c0ba4bec012011f}{}Q\+Brush {\bfseries brush} () const \label{class_q_c_p_item_tracer_af07527750cfb6afc3c0ba4bec012011f}
  32. \item
  33. \hypertarget{class_q_c_p_item_tracer_afed284222253083375bfd21d3d4dbc30}{}Q\+Brush {\bfseries selected\+Brush} () const \label{class_q_c_p_item_tracer_afed284222253083375bfd21d3d4dbc30}
  34. \item
  35. \hypertarget{class_q_c_p_item_tracer_a2607fcb3d01e90773ea1532fd6803760}{}double {\bfseries size} () const \label{class_q_c_p_item_tracer_a2607fcb3d01e90773ea1532fd6803760}
  36. \item
  37. \hypertarget{class_q_c_p_item_tracer_a871832dace1709f877c3136fac7ae1ec}{}\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Tracer\+Style} {\bfseries style} () const \label{class_q_c_p_item_tracer_a871832dace1709f877c3136fac7ae1ec}
  38. \item
  39. \hypertarget{class_q_c_p_item_tracer_a74c90da0e6730839b8d7cf6445a4ec1f}{}\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph} $\ast$ {\bfseries graph} () const \label{class_q_c_p_item_tracer_a74c90da0e6730839b8d7cf6445a4ec1f}
  40. \item
  41. \hypertarget{class_q_c_p_item_tracer_a361c5c9b93bdf4588fc49bc3097529ad}{}double {\bfseries graph\+Key} () const \label{class_q_c_p_item_tracer_a361c5c9b93bdf4588fc49bc3097529ad}
  42. \item
  43. \hypertarget{class_q_c_p_item_tracer_ab318c233fa35c17a317af38ce7b3c312}{}bool {\bfseries interpolating} () const \label{class_q_c_p_item_tracer_ab318c233fa35c17a317af38ce7b3c312}
  44. \item
  45. void \hyperlink{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}{set\+Pen} (const Q\+Pen \&pen)
  46. \item
  47. void \hyperlink{class_q_c_p_item_tracer_ae1bf70db7f13f928660168cd3e5069f3}{set\+Selected\+Pen} (const Q\+Pen \&pen)
  48. \item
  49. void \hyperlink{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}{set\+Brush} (const Q\+Brush \&brush)
  50. \item
  51. void \hyperlink{class_q_c_p_item_tracer_a0f55c084980a7a312af859d3e7b558ef}{set\+Selected\+Brush} (const Q\+Brush \&brush)
  52. \item
  53. void \hyperlink{class_q_c_p_item_tracer_ae47fe0617f5fef5fdb766999569be10a}{set\+Size} (double size)
  54. \item
  55. void \hyperlink{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}{set\+Style} (\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Tracer\+Style} style)
  56. \item
  57. void \hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph} (\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph} $\ast$graph)
  58. \item
  59. void \hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key} (double key)
  60. \item
  61. void \hyperlink{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}{set\+Interpolating} (bool enabled)
  62. \item
  63. virtual double \hyperlink{class_q_c_p_item_tracer_ae71f3728421c83c188c117279ca050fd}{select\+Test} (const Q\+Point\+F \&pos, bool only\+Selectable, Q\+Variant $\ast$details=0) const
  64. \item
  65. void \hyperlink{class_q_c_p_item_tracer_a5b90296109e36384aedbc8908a670413}{update\+Position} ()
  66. \end{DoxyCompactItemize}
  67. \subsection*{Atributos públicos}
  68. \begin{DoxyCompactItemize}
  69. \item
  70. \hypertarget{class_q_c_p_item_tracer_a69917e2fdb2b3a929c196958feee7cbe}{}\hyperlink{class_q_c_p_item_position}{Q\+C\+P\+Item\+Position} $\ast$const {\bfseries position}\label{class_q_c_p_item_tracer_a69917e2fdb2b3a929c196958feee7cbe}
  71. \end{DoxyCompactItemize}
  72. \subsection*{Métodos protegidos}
  73. \begin{DoxyCompactItemize}
  74. \item
  75. \hypertarget{class_q_c_p_item_tracer_aaaf49b48382c730ec9be0e74c2538315}{}virtual void {\bfseries draw} (\hyperlink{class_q_c_p_painter}{Q\+C\+P\+Painter} $\ast$painter)\label{class_q_c_p_item_tracer_aaaf49b48382c730ec9be0e74c2538315}
  76. \item
  77. \hypertarget{class_q_c_p_item_tracer_af87132b7698d5bb35c96a8a0b9e7180e}{}Q\+Pen {\bfseries main\+Pen} () const \label{class_q_c_p_item_tracer_af87132b7698d5bb35c96a8a0b9e7180e}
  78. \item
  79. \hypertarget{class_q_c_p_item_tracer_aaf4e72e2d87f53279b9f9ba624961bf5}{}Q\+Brush {\bfseries main\+Brush} () const \label{class_q_c_p_item_tracer_aaf4e72e2d87f53279b9f9ba624961bf5}
  80. \end{DoxyCompactItemize}
  81. \subsection*{Atributos protegidos}
  82. \begin{DoxyCompactItemize}
  83. \item
  84. \hypertarget{class_q_c_p_item_tracer_a579e3bd6bd16d6aaff03638dc8a99a69}{}Q\+Pen {\bfseries m\+Pen}\label{class_q_c_p_item_tracer_a579e3bd6bd16d6aaff03638dc8a99a69}
  85. \item
  86. \hypertarget{class_q_c_p_item_tracer_a3f61829784200819661d1e2a5354d866}{}Q\+Pen {\bfseries m\+Selected\+Pen}\label{class_q_c_p_item_tracer_a3f61829784200819661d1e2a5354d866}
  87. \item
  88. \hypertarget{class_q_c_p_item_tracer_a6597be63a17a266233941354200b2340}{}Q\+Brush {\bfseries m\+Brush}\label{class_q_c_p_item_tracer_a6597be63a17a266233941354200b2340}
  89. \item
  90. \hypertarget{class_q_c_p_item_tracer_a1c15d2adde40efdcc0ef1ff78fd256a6}{}Q\+Brush {\bfseries m\+Selected\+Brush}\label{class_q_c_p_item_tracer_a1c15d2adde40efdcc0ef1ff78fd256a6}
  91. \item
  92. \hypertarget{class_q_c_p_item_tracer_a575153a24bb357d1e006f6bc3bd099b9}{}double {\bfseries m\+Size}\label{class_q_c_p_item_tracer_a575153a24bb357d1e006f6bc3bd099b9}
  93. \item
  94. \hypertarget{class_q_c_p_item_tracer_afb1f236bebf417544e0138fef22a292e}{}\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Tracer\+Style} {\bfseries m\+Style}\label{class_q_c_p_item_tracer_afb1f236bebf417544e0138fef22a292e}
  95. \item
  96. \hypertarget{class_q_c_p_item_tracer_a2d70cf616b579563aa15f796dfc143ac}{}\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph} $\ast$ {\bfseries m\+Graph}\label{class_q_c_p_item_tracer_a2d70cf616b579563aa15f796dfc143ac}
  97. \item
  98. \hypertarget{class_q_c_p_item_tracer_a8fa20f2e9ee07d21fd7c8d30ba4702ca}{}double {\bfseries m\+Graph\+Key}\label{class_q_c_p_item_tracer_a8fa20f2e9ee07d21fd7c8d30ba4702ca}
  99. \item
  100. \hypertarget{class_q_c_p_item_tracer_afab37c22ad39f235921e86f93cd84595}{}bool {\bfseries m\+Interpolating}\label{class_q_c_p_item_tracer_afab37c22ad39f235921e86f93cd84595}
  101. \end{DoxyCompactItemize}
  102. \subsection*{Otros miembros heredados}
  103. \subsection{Descripción detallada}
  104. Item that sticks to \hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph} data points.
  105. The tracer can be connected with a \hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph} via \hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph}. Then it will automatically adopt the coordinate axes of the graph and update its {\itshape position} to be on the graph\textquotesingle{}s data. This means the key stays controllable via \hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}, but the value will follow the graph data. If a \hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph} is connected, note that setting the coordinates of the tracer item directly via {\itshape position} will have no effect because they will be overriden in the next redraw (this is when the coordinate update happens).
  106. If the specified key in \hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key} is outside the key bounds of the graph, the tracer will stay at the corresponding end of the graph.
  107. With \hyperlink{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}{set\+Interpolating} you may specify whether the tracer may only stay exactly on data points or whether it interpolates data points linearly, if given a key that lies between two data points of the graph.
  108. The tracer has different visual styles, see \hyperlink{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}{set\+Style}. It is also possible to make the tracer have no own visual appearance (set the style to \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}{ts\+None}), and just connect other item positions to the tracer {\itshape position} (used as an anchor) via \hyperlink{class_q_c_p_item_position_ac094d67a95d2dceafa0d50b9db3a7e51}{Q\+C\+P\+Item\+Position\+::set\+Parent\+Anchor}.
  109. \begin{DoxyNote}{Nota}
  110. The tracer position is only automatically updated upon redraws. So when the data of the graph changes and immediately afterwards (without a redraw) the a position coordinates of the tracer are retrieved, they will not reflect the updated data of the graph. In this case \hyperlink{class_q_c_p_item_tracer_a5b90296109e36384aedbc8908a670413}{update\+Position} must be called manually, prior to reading the tracer coordinates.
  111. \end{DoxyNote}
  112. \subsection{Documentación de las enumeraciones miembro de la clase}
  113. \hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!Tracer\+Style@{Tracer\+Style}}
  114. \index{Tracer\+Style@{Tracer\+Style}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  115. \subsubsection[{Tracer\+Style}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf Q\+C\+P\+Item\+Tracer\+::\+Tracer\+Style}}\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}
  116. The different visual appearances a tracer item can have. Some styles size may be controlled with \hyperlink{class_q_c_p_item_tracer_ae47fe0617f5fef5fdb766999569be10a}{set\+Size}.
  117. \begin{DoxySeeAlso}{Ver también}
  118. \hyperlink{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}{set\+Style}
  119. \end{DoxySeeAlso}
  120. \begin{Desc}
  121. \item[Valores de enumeraciones]\par
  122. \begin{description}
  123. \index{ts\+None@{ts\+None}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+None@{ts\+None}}\item[{\em
  124. \hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}{}ts\+None\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}
  125. }]The tracer is not visible. \index{ts\+Plus@{ts\+Plus}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+Plus@{ts\+Plus}}\item[{\em
  126. \hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a3323fb04017146e4885e080a459472fa}{}ts\+Plus\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a3323fb04017146e4885e080a459472fa}
  127. }]A plus shaped crosshair with limited size. \index{ts\+Crosshair@{ts\+Crosshair}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+Crosshair@{ts\+Crosshair}}\item[{\em
  128. \hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500af562ec81ac3ba99e26ef8540cf1ec16f}{}ts\+Crosshair\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500af562ec81ac3ba99e26ef8540cf1ec16f}
  129. }]A plus shaped crosshair which spans the complete axis rect. \index{ts\+Circle@{ts\+Circle}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+Circle@{ts\+Circle}}\item[{\em
  130. \hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500ae2252c28f4842880d71e9f94e69de94e}{}ts\+Circle\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500ae2252c28f4842880d71e9f94e69de94e}
  131. }]A circle. \index{ts\+Square@{ts\+Square}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+Square@{ts\+Square}}\item[{\em
  132. \hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a4ed5f01f2c5fd86d980366d79f481b9b}{}ts\+Square\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a4ed5f01f2c5fd86d980366d79f481b9b}
  133. }]A square. \end{description}
  134. \end{Desc}
  135. \subsection{Documentación del constructor y destructor}
  136. \hypertarget{class_q_c_p_item_tracer_adc5ca846eeac323db4aa1fc4081e36be}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  137. \index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  138. \subsubsection[{Q\+C\+P\+Item\+Tracer}]{\setlength{\rightskip}{0pt plus 5cm}Q\+C\+P\+Item\+Tracer\+::\+Q\+C\+P\+Item\+Tracer (
  139. \begin{DoxyParamCaption}
  140. \item[{{\bf Q\+Custom\+Plot} $\ast$}]{parent\+Plot}
  141. \end{DoxyParamCaption}
  142. )}\label{class_q_c_p_item_tracer_adc5ca846eeac323db4aa1fc4081e36be}
  143. Creates a tracer item and sets default values.
  144. The constructed item can be added to the plot with \hyperlink{class_q_custom_plot_aa500620379262321685cb7a7674cbd2a}{Q\+Custom\+Plot\+::add\+Item}.
  145. \subsection{Documentación de las funciones miembro}
  146. \hypertarget{class_q_c_p_item_tracer_ae71f3728421c83c188c117279ca050fd}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!select\+Test@{select\+Test}}
  147. \index{select\+Test@{select\+Test}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  148. \subsubsection[{select\+Test}]{\setlength{\rightskip}{0pt plus 5cm}double Q\+C\+P\+Item\+Tracer\+::select\+Test (
  149. \begin{DoxyParamCaption}
  150. \item[{const Q\+Point\+F \&}]{pos, }
  151. \item[{bool}]{only\+Selectable, }
  152. \item[{Q\+Variant $\ast$}]{details = {\ttfamily 0}}
  153. \end{DoxyParamCaption}
  154. ) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{class_q_c_p_item_tracer_ae71f3728421c83c188c117279ca050fd}
  155. This function is used to decide whether a click hits a layerable object or not.
  156. {\itshape pos} is a point in pixel coordinates on the \hyperlink{class_q_custom_plot}{Q\+Custom\+Plot} surface. This function returns the shortest pixel distance of this point to the object. If the object is either invisible or the distance couldn\textquotesingle{}t be determined, -\/1.\+0 is returned. Further, if {\itshape only\+Selectable} is true and the object is not selectable, -\/1.\+0 is returned, too.
  157. If the item is represented not by single lines but by an area like \hyperlink{class_q_c_p_item_rect}{Q\+C\+P\+Item\+Rect} or \hyperlink{class_q_c_p_item_text}{Q\+C\+P\+Item\+Text}, a click inside the area returns a constant value greater zero (typically the selection\+Tolerance of the parent \hyperlink{class_q_custom_plot}{Q\+Custom\+Plot} multiplied by 0.\+99). If the click lies outside the area, this function returns -\/1.\+0.
  158. Providing a constant value for area objects allows selecting line objects even when they are obscured by such area objects, by clicking close to the lines (i.\+e. closer than 0.\+99$\ast$selection\+Tolerance).
  159. The actual setting of the selection state is not done by this function. This is handled by the parent \hyperlink{class_q_custom_plot}{Q\+Custom\+Plot} when the mouse\+Release\+Event occurs, and the finally selected object is notified via the select\+Event/deselect\+Event methods.
  160. {\itshape details} is an optional output parameter. Every layerable subclass may place any information in {\itshape details}. This information will be passed to select\+Event when the parent \hyperlink{class_q_custom_plot}{Q\+Custom\+Plot} decides on the basis of this select\+Test call, that the object was successfully selected. The subsequent call to select\+Event will carry the {\itshape details}. This is useful for multi-\/part objects (like \hyperlink{class_q_c_p_axis}{Q\+C\+P\+Axis}). This way, a possibly complex calculation to decide which part was clicked is only done once in \hyperlink{class_q_c_p_item_tracer_ae71f3728421c83c188c117279ca050fd}{select\+Test}. The result (i.\+e. the actually clicked part) can then be placed in {\itshape details}. So in the subsequent select\+Event, the decision which part was selected doesn\textquotesingle{}t have to be done a second time for a single selection operation.
  161. You may pass 0 as {\itshape details} to indicate that you are not interested in those selection details.
  162. \begin{DoxySeeAlso}{Ver también}
  163. select\+Event, deselect\+Event, \hyperlink{class_q_custom_plot_a5ee1e2f6ae27419deca53e75907c27e5}{Q\+Custom\+Plot\+::set\+Interactions}
  164. \end{DoxySeeAlso}
  165. Implementa \hyperlink{class_q_c_p_abstract_item_a96d522d10ffc0413b9a366c6f7f0476b}{Q\+C\+P\+Abstract\+Item}.
  166. \hypertarget{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Brush@{set\+Brush}}
  167. \index{set\+Brush@{set\+Brush}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  168. \subsubsection[{set\+Brush}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::set\+Brush (
  169. \begin{DoxyParamCaption}
  170. \item[{const Q\+Brush \&}]{brush}
  171. \end{DoxyParamCaption}
  172. )}\label{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}
  173. Sets the brush that will be used to draw any fills of the tracer
  174. \begin{DoxySeeAlso}{Ver también}
  175. \hyperlink{class_q_c_p_item_tracer_a0f55c084980a7a312af859d3e7b558ef}{set\+Selected\+Brush}, \hyperlink{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}{set\+Pen}
  176. \end{DoxySeeAlso}
  177. \hypertarget{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Graph@{set\+Graph}}
  178. \index{set\+Graph@{set\+Graph}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  179. \subsubsection[{set\+Graph}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::set\+Graph (
  180. \begin{DoxyParamCaption}
  181. \item[{{\bf Q\+C\+P\+Graph} $\ast$}]{graph}
  182. \end{DoxyParamCaption}
  183. )}\label{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}
  184. Sets the \hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph} this tracer sticks to. The tracer {\itshape position} will be set to type \hyperlink{class_q_c_p_item_position_aad9936c22bf43e3d358552f6e86dbdc8ad5ffb8dc99ad73263f7010c77342294c}{Q\+C\+P\+Item\+Position\+::pt\+Plot\+Coords} and the axes will be set to the axes of {\itshape graph}.
  185. To free the tracer from any graph, set {\itshape graph} to 0. The tracer {\itshape position} can then be placed freely like any other item position. This is the state the tracer will assume when its graph gets deleted while still attached to it.
  186. \begin{DoxySeeAlso}{Ver también}
  187. \hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}
  188. \end{DoxySeeAlso}
  189. \hypertarget{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Graph\+Key@{set\+Graph\+Key}}
  190. \index{set\+Graph\+Key@{set\+Graph\+Key}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  191. \subsubsection[{set\+Graph\+Key}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::set\+Graph\+Key (
  192. \begin{DoxyParamCaption}
  193. \item[{double}]{key}
  194. \end{DoxyParamCaption}
  195. )}\label{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}
  196. Sets the key of the graph\textquotesingle{}s data point the tracer will be positioned at. This is the only free coordinate of a tracer when attached to a graph.
  197. Depending on \hyperlink{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}{set\+Interpolating}, the tracer will be either positioned on the data point closest to {\itshape key}, or will stay exactly at {\itshape key} and interpolate the value linearly.
  198. \begin{DoxySeeAlso}{Ver también}
  199. \hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph}, \hyperlink{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}{set\+Interpolating}
  200. \end{DoxySeeAlso}
  201. \hypertarget{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Interpolating@{set\+Interpolating}}
  202. \index{set\+Interpolating@{set\+Interpolating}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  203. \subsubsection[{set\+Interpolating}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::set\+Interpolating (
  204. \begin{DoxyParamCaption}
  205. \item[{bool}]{enabled}
  206. \end{DoxyParamCaption}
  207. )}\label{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}
  208. Sets whether the value of the graph\textquotesingle{}s data points shall be interpolated, when positioning the tracer.
  209. If {\itshape enabled} is set to false and a key is given with \hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}, the tracer is placed on the data point of the graph which is closest to the key, but which is not necessarily exactly there. If {\itshape enabled} is true, the tracer will be positioned exactly at the specified key, and the appropriate value will be interpolated from the graph\textquotesingle{}s data points linearly.
  210. \begin{DoxySeeAlso}{Ver también}
  211. \hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph}, \hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}
  212. \end{DoxySeeAlso}
  213. \hypertarget{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Pen@{set\+Pen}}
  214. \index{set\+Pen@{set\+Pen}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  215. \subsubsection[{set\+Pen}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::set\+Pen (
  216. \begin{DoxyParamCaption}
  217. \item[{const Q\+Pen \&}]{pen}
  218. \end{DoxyParamCaption}
  219. )}\label{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}
  220. Sets the pen that will be used to draw the line of the tracer
  221. \begin{DoxySeeAlso}{Ver también}
  222. \hyperlink{class_q_c_p_item_tracer_ae1bf70db7f13f928660168cd3e5069f3}{set\+Selected\+Pen}, \hyperlink{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}{set\+Brush}
  223. \end{DoxySeeAlso}
  224. \hypertarget{class_q_c_p_item_tracer_a0f55c084980a7a312af859d3e7b558ef}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Selected\+Brush@{set\+Selected\+Brush}}
  225. \index{set\+Selected\+Brush@{set\+Selected\+Brush}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  226. \subsubsection[{set\+Selected\+Brush}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::set\+Selected\+Brush (
  227. \begin{DoxyParamCaption}
  228. \item[{const Q\+Brush \&}]{brush}
  229. \end{DoxyParamCaption}
  230. )}\label{class_q_c_p_item_tracer_a0f55c084980a7a312af859d3e7b558ef}
  231. Sets the brush that will be used to draw any fills of the tracer, when selected.
  232. \begin{DoxySeeAlso}{Ver también}
  233. \hyperlink{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}{set\+Brush}, \hyperlink{class_q_c_p_abstract_item_a203de94ad586cc44d16c9565f49d3378}{set\+Selected}
  234. \end{DoxySeeAlso}
  235. \hypertarget{class_q_c_p_item_tracer_ae1bf70db7f13f928660168cd3e5069f3}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Selected\+Pen@{set\+Selected\+Pen}}
  236. \index{set\+Selected\+Pen@{set\+Selected\+Pen}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  237. \subsubsection[{set\+Selected\+Pen}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::set\+Selected\+Pen (
  238. \begin{DoxyParamCaption}
  239. \item[{const Q\+Pen \&}]{pen}
  240. \end{DoxyParamCaption}
  241. )}\label{class_q_c_p_item_tracer_ae1bf70db7f13f928660168cd3e5069f3}
  242. Sets the pen that will be used to draw the line of the tracer when selected
  243. \begin{DoxySeeAlso}{Ver también}
  244. \hyperlink{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}{set\+Pen}, \hyperlink{class_q_c_p_abstract_item_a203de94ad586cc44d16c9565f49d3378}{set\+Selected}
  245. \end{DoxySeeAlso}
  246. \hypertarget{class_q_c_p_item_tracer_ae47fe0617f5fef5fdb766999569be10a}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Size@{set\+Size}}
  247. \index{set\+Size@{set\+Size}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  248. \subsubsection[{set\+Size}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::set\+Size (
  249. \begin{DoxyParamCaption}
  250. \item[{double}]{size}
  251. \end{DoxyParamCaption}
  252. )}\label{class_q_c_p_item_tracer_ae47fe0617f5fef5fdb766999569be10a}
  253. Sets the size of the tracer in pixels, if the style supports setting a size (e.\+g. \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a4ed5f01f2c5fd86d980366d79f481b9b}{ts\+Square} does, \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500af562ec81ac3ba99e26ef8540cf1ec16f}{ts\+Crosshair} does not). \hypertarget{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Style@{set\+Style}}
  254. \index{set\+Style@{set\+Style}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  255. \subsubsection[{set\+Style}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::set\+Style (
  256. \begin{DoxyParamCaption}
  257. \item[{{\bf Q\+C\+P\+Item\+Tracer\+::\+Tracer\+Style}}]{style}
  258. \end{DoxyParamCaption}
  259. )}\label{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}
  260. Sets the style/visual appearance of the tracer.
  261. If you only want to use the tracer {\itshape position} as an anchor for other items, set {\itshape style} to \hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}{ts\+None}. \hypertarget{class_q_c_p_item_tracer_a5b90296109e36384aedbc8908a670413}{}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!update\+Position@{update\+Position}}
  262. \index{update\+Position@{update\+Position}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
  263. \subsubsection[{update\+Position}]{\setlength{\rightskip}{0pt plus 5cm}void Q\+C\+P\+Item\+Tracer\+::update\+Position (
  264. \begin{DoxyParamCaption}
  265. {}
  266. \end{DoxyParamCaption}
  267. )}\label{class_q_c_p_item_tracer_a5b90296109e36384aedbc8908a670413}
  268. If the tracer is connected with a graph (\hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph}), this function updates the tracer\textquotesingle{}s {\itshape position} to reside on the graph data, depending on the configured key (\hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}).
  269. It is called automatically on every redraw and normally doesn\textquotesingle{}t need to be called manually. One exception is when you want to read the tracer coordinates via {\itshape position} and are not sure that the graph\textquotesingle{}s data (or the tracer key with \hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}) hasn\textquotesingle{}t changed since the last redraw. In that situation, call this function before accessing {\itshape position}, to make sure you don\textquotesingle{}t get out-\/of-\/date coordinates.
  270. If there is no graph set on this tracer, this function does nothing.
  271. La documentación para esta clase fue generada a partir de los siguientes ficheros\+:\begin{DoxyCompactItemize}
  272. \item
  273. \hyperlink{qcustomplot_8h}{qcustomplot.\+h}\item
  274. \hyperlink{qcustomplot_8cpp}{qcustomplot.\+cpp}\end{DoxyCompactItemize}