Sophie

Sophie

distrib > Mandriva > cooker > i586 > by-pkgid > 76bdad05b5dca2a491582dbec0713d55 > files > 670

libqwt-devel-6.0.1-2.i586.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Qwt User&#39;s Guide: QwtSyntheticPointData Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Qwt User's Guide&#160;<span id="projectnumber">6.0.1</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle">
<h1>QwtSyntheticPointData Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="QwtSyntheticPointData" --><!-- doxytag: inherits="QwtSeriesData&lt; QPointF &gt;" -->
<p>Synthetic point data.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="qwt__series__data_8h_source.html">qwt_series_data.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for QwtSyntheticPointData:</div>
<div class="dyncontent">
<div class="center"><img src="class_qwt_synthetic_point_data__inherit__graph.png" border="0" usemap="#_qwt_synthetic_point_data_inherit__map" alt="Inheritance graph"/></div>
<map name="_qwt_synthetic_point_data_inherit__map" id="_qwt_synthetic_point_data_inherit__map">
<area shape="rect" id="node2" href="class_qwt_series_data.html" title="QwtSeriesData\&lt; QPointF \&gt;" alt="" coords="5,101,187,131"/><area shape="rect" id="node4" href="class_qwt_series_data.html" title="Abstract interface for iterating over samples." alt="" coords="27,5,165,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="class_qwt_synthetic_point_data-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QRectF&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#a89296d373856825047f48e86d7731b0a">boundingRect</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_qwt_interval.html">QwtInterval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#acd5ffffb670778cfd714bc915615851e">interval</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#ad2980a20669d9703046e9ded9cacf496">QwtSyntheticPointData</a> (size_t size, const <a class="el" href="class_qwt_interval.html">QwtInterval</a> &amp;=<a class="el" href="class_qwt_interval.html">QwtInterval</a>())</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">QRectF&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#a00ead6b5e6cbc06d87af6edaa518d05f">rectOfInterest</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual QPointF&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#a70d3ed6bfd764878f1709ab6b55e2f0e">sample</a> (size_t i) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#a1a0b2548b496affcf65272acd86c6700">setInterval</a> (const <a class="el" href="class_qwt_interval.html">QwtInterval</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#a39cc8512e7d8beecde003f7781174b84">setRectOfInterest</a> (const QRectF &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#a321754c5acac77e0e5685968b1cdfdae">setSize</a> (size_t size)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#a61b2cc26e1b5fa4a64e29273cf3e1599">size</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#ab14ef450ef097f05dbb8b8d75202538b">x</a> (uint index) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_synthetic_point_data.html#af65186bea0056b3f7f46814c61d68c99">y</a> (double x) const =0</td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">QRectF&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qwt_series_data.html#a24fbbcb0baa0c728117d2e6764d00414">d_boundingRect</a></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Synthetic point data. </p>
<p><a class="el" href="class_qwt_synthetic_point_data.html" title="Synthetic point data.">QwtSyntheticPointData</a> provides a fixed number of points for an interval. The points are calculated in equidistant steps in x-direction.</p>
<p>If the interval is invalid, the points are calculated for the "rect of interest", what normally is the displayed area on the plot canvas. In this mode you get different levels of detail, when zooming in/out.</p>
<dl class="user"><dt><b>Example</b></dt><dd></dd></dl>
<p>The following example shows how to implement a sinus curve.</p>
<div class="fragment"><pre class="fragment">
#include &lt;cmath&gt;
#include &lt;qwt_series_data.h&gt;
#include &lt;qwt_plot_curve.h&gt;
#include &lt;qwt_plot.h&gt;
#include &lt;qapplication.h&gt;

class SinusData: public QwtSyntheticPointData
{
public:
    SinusData():
        QwtSyntheticPointData(100)
    {
    }
    virtual double y(double x) const
    {
        return qSin(x);
    }
};

int main(int argc, char **argv)
{
    QApplication a(argc, argv);

    QwtPlot plot;
    plot.setAxisScale(QwtPlot::xBottom, 0.0, 10.0);
    plot.setAxisScale(QwtPlot::yLeft, -1.0, 1.0);

    QwtPlotCurve *curve = new QwtPlotCurve("y = sin(x)");
    curve-&gt;setData(SinusData());
    curve-&gt;attach(&amp;plot);

    plot.show();
    return a.exec();
}
   </pre></div> </div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ad2980a20669d9703046e9ded9cacf496"></a><!-- doxytag: member="QwtSyntheticPointData::QwtSyntheticPointData" ref="ad2980a20669d9703046e9ded9cacf496" args="(size_t size, const QwtInterval &amp;=QwtInterval())" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">QwtSyntheticPointData::QwtSyntheticPointData </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_qwt_interval.html">QwtInterval</a> &amp;&#160;</td>
          <td class="paramname"><em>interval</em> = <code><a class="el" href="class_qwt_interval.html">QwtInterval</a>()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Constructor</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">size</td><td>Number of points </td></tr>
    <tr><td class="paramname">interval</td><td>Bounding interval for the points</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_qwt_synthetic_point_data.html#a1a0b2548b496affcf65272acd86c6700">setInterval()</a>, <a class="el" href="class_qwt_synthetic_point_data.html#a321754c5acac77e0e5685968b1cdfdae">setSize()</a> </dd></dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a89296d373856825047f48e86d7731b0a"></a><!-- doxytag: member="QwtSyntheticPointData::boundingRect" ref="a89296d373856825047f48e86d7731b0a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">QRectF QwtSyntheticPointData::boundingRect </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Calculate the bounding rect. </p>
<p>This implementation iterates over all points, what could often be implemented much faster using the characteristics of the series. When there are many points it is recommended to overload and reimplement this method using the characteristics of the series ( if possible ).</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>Bounding rectangle </dd></dl>

<p>Implements <a class="el" href="class_qwt_series_data.html#aedb969ba51a27d88d26ad7f7cb1c2c7f">QwtSeriesData&lt; QPointF &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="acd5ffffb670778cfd714bc915615851e"></a><!-- doxytag: member="QwtSyntheticPointData::interval" ref="acd5ffffb670778cfd714bc915615851e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_qwt_interval.html">QwtInterval</a> QwtSyntheticPointData::interval </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>Bounding interval </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_qwt_synthetic_point_data.html#a1a0b2548b496affcf65272acd86c6700">setInterval()</a>, <a class="el" href="class_qwt_synthetic_point_data.html#a61b2cc26e1b5fa4a64e29273cf3e1599">size()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a00ead6b5e6cbc06d87af6edaa518d05f"></a><!-- doxytag: member="QwtSyntheticPointData::rectOfInterest" ref="a00ead6b5e6cbc06d87af6edaa518d05f" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">QRectF QwtSyntheticPointData::rectOfInterest </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>"rect of interest" </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_qwt_synthetic_point_data.html#a39cc8512e7d8beecde003f7781174b84">setRectOfInterest()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a70d3ed6bfd764878f1709ab6b55e2f0e"></a><!-- doxytag: member="QwtSyntheticPointData::sample" ref="a70d3ed6bfd764878f1709ab6b55e2f0e" args="(size_t i) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">QPointF QwtSyntheticPointData::sample </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>index</em></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calculate the point from an index</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">index</td><td>Index </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>QPointF(x(index), y(x(index)));</dd></dl>
<dl class="warning"><dt><b>Warning:</b></dt><dd>For invalid indices ( index &lt; 0 || index &gt;= <a class="el" href="class_qwt_synthetic_point_data.html#a61b2cc26e1b5fa4a64e29273cf3e1599">size()</a> ) (0, 0) is returned. </dd></dl>

<p>Implements <a class="el" href="class_qwt_series_data.html#ae8650d16c07c58f01897ab48658a3266">QwtSeriesData&lt; QPointF &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a1a0b2548b496affcf65272acd86c6700"></a><!-- doxytag: member="QwtSyntheticPointData::setInterval" ref="a1a0b2548b496affcf65272acd86c6700" args="(const QwtInterval &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void QwtSyntheticPointData::setInterval </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_qwt_interval.html">QwtInterval</a> &amp;&#160;</td>
          <td class="paramname"><em>interval</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set the bounding interval</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">interval</td><td>Interval </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_qwt_synthetic_point_data.html#acd5ffffb670778cfd714bc915615851e">interval()</a>, <a class="el" href="class_qwt_synthetic_point_data.html#a321754c5acac77e0e5685968b1cdfdae">setSize()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a39cc8512e7d8beecde003f7781174b84"></a><!-- doxytag: member="QwtSyntheticPointData::setRectOfInterest" ref="a39cc8512e7d8beecde003f7781174b84" args="(const QRectF &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void QwtSyntheticPointData::setRectOfInterest </td>
          <td>(</td>
          <td class="paramtype">const QRectF &amp;&#160;</td>
          <td class="paramname"><em>rect</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Set a the "rect of interest"</p>
<p><a class="el" href="class_qwt_plot_series_item.html" title="Class template for plot items representing a series of samples.">QwtPlotSeriesItem</a> defines the current area of the plot canvas as "rect of interest" ( <a class="el" href="class_qwt_plot_series_item.html#a5c40b692a48718b71bed27a1802c50d0">QwtPlotSeriesItem::updateScaleDiv()</a> ).</p>
<p>If <a class="el" href="class_qwt_synthetic_point_data.html#acd5ffffb670778cfd714bc915615851e">interval()</a>.isValid() == false the x values are calculated in the interval rect.left() -&gt; rect.right().</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_qwt_synthetic_point_data.html#a00ead6b5e6cbc06d87af6edaa518d05f">rectOfInterest()</a> </dd></dl>

<p>Reimplemented from <a class="el" href="class_qwt_series_data.html#a81466c72589c03310543d17e1f1d0ab7">QwtSeriesData&lt; QPointF &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a321754c5acac77e0e5685968b1cdfdae"></a><!-- doxytag: member="QwtSyntheticPointData::setSize" ref="a321754c5acac77e0e5685968b1cdfdae" args="(size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void QwtSyntheticPointData::setSize </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Change the number of points</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">size</td><td>Number of points </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_qwt_synthetic_point_data.html#a61b2cc26e1b5fa4a64e29273cf3e1599">size()</a>, <a class="el" href="class_qwt_synthetic_point_data.html#a1a0b2548b496affcf65272acd86c6700">setInterval()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a61b2cc26e1b5fa4a64e29273cf3e1599"></a><!-- doxytag: member="QwtSyntheticPointData::size" ref="a61b2cc26e1b5fa4a64e29273cf3e1599" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t QwtSyntheticPointData::size </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>Number of points </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_qwt_synthetic_point_data.html#a321754c5acac77e0e5685968b1cdfdae">setSize()</a>, <a class="el" href="class_qwt_synthetic_point_data.html#acd5ffffb670778cfd714bc915615851e">interval()</a> </dd></dl>

<p>Implements <a class="el" href="class_qwt_series_data.html#a3cfe5b26fc55a887ac85b0103ae80a3e">QwtSeriesData&lt; QPointF &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="ab14ef450ef097f05dbb8b8d75202538b"></a><!-- doxytag: member="QwtSyntheticPointData::x" ref="ab14ef450ef097f05dbb8b8d75202538b" args="(uint index) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double QwtSyntheticPointData::x </td>
          <td>(</td>
          <td class="paramtype">uint&#160;</td>
          <td class="paramname"><em>index</em></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calculate a x-value from an index</p>
<p>x values are calculated by deviding an interval into equidistant steps. If !interval().isValid() the interval is calculated from the "rect of interest".</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_qwt_synthetic_point_data.html#acd5ffffb670778cfd714bc915615851e">interval()</a>, <a class="el" href="class_qwt_synthetic_point_data.html#a00ead6b5e6cbc06d87af6edaa518d05f">rectOfInterest()</a>, <a class="el" href="class_qwt_synthetic_point_data.html#af65186bea0056b3f7f46814c61d68c99">y()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="af65186bea0056b3f7f46814c61d68c99"></a><!-- doxytag: member="QwtSyntheticPointData::y" ref="af65186bea0056b3f7f46814c61d68c99" args="(double x) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual double QwtSyntheticPointData::y </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>x</em></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Calculate a y value for a x value</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">x</td><td>x value </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Corresponding y value </dd></dl>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a24fbbcb0baa0c728117d2e6764d00414"></a><!-- doxytag: member="QwtSyntheticPointData::d_boundingRect" ref="a24fbbcb0baa0c728117d2e6764d00414" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">QRectF <a class="el" href="class_qwt_series_data.html">QwtSeriesData</a>&lt; QPointF  &gt;::<a class="el" href="class_qwt_series_data.html#a24fbbcb0baa0c728117d2e6764d00414">d_boundingRect</a><code> [mutable, protected, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Can be used to cache a calculated bounding rectangle. </p>

</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>Generated by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address>
</body>
</html>