File: qwt__curve_8h-source.html

package info (click to toggle)
libqwt 4.2.0-4.1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 9,832 kB
  • ctags: 5,512
  • sloc: cpp: 22,973; ansic: 244; makefile: 66
file content (181 lines) | stat: -rw-r--r-- 13,368 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Qwt User&apos;s Guide: qwt_curve.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.8 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>qwt_curve.h</h1><pre class="fragment"><div>00001 <span class="comment">/* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************</span>
00002 <span class="comment"> * Qwt Widget Library</span>
00003 <span class="comment"> * Copyright (C) 1997   Josef Wilgen</span>
00004 <span class="comment"> * Copyright (C) 2002   Uwe Rathmann</span>
00005 <span class="comment"> *</span>
00006 <span class="comment"> * This library is free software; you can redistribute it and/or</span>
00007 <span class="comment"> * modify it under the terms of the Qwt License, Version 1.0</span>
00008 <span class="comment"> *****************************************************************************/</span>
00009 
00010 <span class="preprocessor">#ifndef QWT_CURVE_H</span>
00011 <span class="preprocessor"></span><span class="preprocessor">#define QWT_CURVE_H</span>
00012 <span class="preprocessor"></span>
00013 <span class="preprocessor">#include &lt;qpen.h&gt;</span>
00014 <span class="preprocessor">#include &lt;qstring.h&gt;</span>
00015 <span class="preprocessor">#include "qwt_global.h"</span>
00016 <span class="preprocessor">#include "qwt_array.h"</span>
00017 <span class="preprocessor">#include "qwt_data.h"</span>
00018 <span class="preprocessor">#include "qwt_spline.h"</span>
00019 <span class="preprocessor">#include "qwt_symbol.h"</span>
00020 
00021 <span class="keyword">class </span>QPainter;
00022 <span class="keyword">class </span><a class="code" href="class_qwt_di_map.html">QwtDiMap</a>;
00023 
00024 <span class="preprocessor">#if defined(QWT_TEMPLATEDLL)</span>
00025 <span class="preprocessor"></span><span class="comment">// MOC_SKIP_BEGIN</span>
00026 <span class="keyword">template</span> <span class="keyword">class </span>QWT_EXPORT QwtArray&lt;double&gt;;
00027 <span class="comment">// MOC_SKIP_END</span>
00028 <span class="preprocessor">#endif</span>
00029 <span class="preprocessor"></span>
<a name="l00060"></a><a class="code" href="class_qwt_curve.html">00060</a> <span class="keyword">class </span>QWT_EXPORT <a class="code" href="class_qwt_curve.html">QwtCurve</a>
00061 {
00062 <span class="keyword">public</span>:
<a name="l00067"></a><a class="code" href="class_qwt_curve.html#w13">00067</a>     <span class="keyword">enum</span> CurveStyle
00068     {
00069         NoCurve,
00070         Lines,
00071         Sticks,
00072         Steps,
00073         Dots,
00074         Spline,
00075         UserCurve = 100
00076     };
00077 
<a name="l00082"></a><a class="code" href="class_qwt_curve.html#w14">00082</a>     <span class="keyword">enum</span> CurveOption
00083     {
00084         Auto = 0,
00085         Yfx = 1,
00086         Xfy = 2,
00087         Parametric = 4,
00088         Periodic = 8,
00089         Inverted = 16
00090     };
00091 
00092     <a class="code" href="class_qwt_curve.html">QwtCurve</a>(<span class="keyword">const</span> QString &amp;title = QString::null);
00093     <a class="code" href="class_qwt_curve.html">QwtCurve</a>(<span class="keyword">const</span> <a class="code" href="class_qwt_curve.html">QwtCurve</a> &amp;c);
00094     <span class="keyword">virtual</span> ~<a class="code" href="class_qwt_curve.html">QwtCurve</a>();
00095 
00096     <span class="keyword">const</span> <a class="code" href="class_qwt_curve.html">QwtCurve</a>&amp; operator= (<span class="keyword">const</span> <a class="code" href="class_qwt_curve.html">QwtCurve</a> &amp;c);
00097 
00098     <span class="keywordtype">void</span> setRawData(<span class="keyword">const</span> <span class="keywordtype">double</span> *x, <span class="keyword">const</span> <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> size);
00099     <span class="keywordtype">void</span> setData(<span class="keyword">const</span> <span class="keywordtype">double</span> *xData, <span class="keyword">const</span> <span class="keywordtype">double</span> *yData, <span class="keywordtype">int</span> size);
00100     <span class="keywordtype">void</span> setData(<span class="keyword">const</span> QwtArray&lt;double&gt; &amp;xData, <span class="keyword">const</span> QwtArray&lt;double&gt; &amp;yData);
00101     <span class="keywordtype">void</span> setData(<span class="keyword">const</span> QwtArray&lt;QwtDoublePoint&gt; &amp;data);
00102     <span class="keywordtype">void</span> setData(<span class="keyword">const</span> <a class="code" href="class_qwt_data.html">QwtData</a> &amp;data);
00103     
00104     <span class="keywordtype">int</span> dataSize() const;
00105     inline <span class="keywordtype">double</span> x(<span class="keywordtype">int</span> i) const;
00106     inline <span class="keywordtype">double</span> y(<span class="keywordtype">int</span> i) const;
00107 
00108     virtual <a class="code" href="class_qwt_double_rect.html">QwtDoubleRect</a> boundingRect() const;
00109 
<a name="l00111"></a><a class="code" href="class_qwt_curve.html#a13">00111</a>     inline <span class="keywordtype">double</span> minXValue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> boundingRect().x1(); }
<a name="l00113"></a><a class="code" href="class_qwt_curve.html#a14">00113</a>     <span class="keyword">inline</span> <span class="keywordtype">double</span> maxXValue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> boundingRect().x2(); }
<a name="l00115"></a><a class="code" href="class_qwt_curve.html#a15">00115</a>     <span class="keyword">inline</span> <span class="keywordtype">double</span> minYValue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> boundingRect().y1(); }
<a name="l00117"></a><a class="code" href="class_qwt_curve.html#a16">00117</a>     <span class="keyword">inline</span> <span class="keywordtype">double</span> maxYValue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> boundingRect().y2(); }
00118 
00119     <span class="keywordtype">void</span> setOptions(<span class="keywordtype">int</span> t);
00120     <span class="keywordtype">int</span> options() const;
00121 
00122     <span class="keywordtype">void</span> setTitle(const QString &amp;title);
00123     const QString &amp;title() const;
00124 
00125     <span class="keywordtype">void</span> setPen(const QPen &amp;);
00126     const QPen &amp;pen() const;
00127 
00128     <span class="keywordtype">void</span> setBrush(const QBrush &amp;);
00129     const QBrush &amp;brush() const;
00130 
00131     <span class="keywordtype">void</span> setBaseline(<span class="keywordtype">double</span> ref);
00132     <span class="keywordtype">double</span> baseline() const;
00133 
00134     <span class="keywordtype">void</span> setStyle(<span class="keywordtype">int</span> style, <span class="keywordtype">int</span> options = 0);
00135     <span class="keywordtype">int</span> style() const;
00136 
00137     <span class="keywordtype">void</span> setSymbol(const <a class="code" href="class_qwt_symbol.html">QwtSymbol</a> &amp;s);
00138     const <a class="code" href="class_qwt_symbol.html">QwtSymbol</a>&amp; symbol() const;
00139 
00140     <span class="keywordtype">void</span> setSplineSize(<span class="keywordtype">int</span> s);
00141     <span class="keywordtype">int</span> splineSize() const;
00142 
00143     virtual <span class="keywordtype">void</span> draw(QPainter *p, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;yMap,
00144         <span class="keywordtype">int</span> from = 0, <span class="keywordtype">int</span> to = -1);
00145 
00146 protected:
00147 
00148     <span class="keywordtype">void</span> init(const QString &amp;title);
00149     <span class="keywordtype">void</span> copy(const <a class="code" href="class_qwt_curve.html">QwtCurve</a> &amp;c);
00150 
00151     virtual <span class="keywordtype">void</span> drawCurve(QPainter *p, <span class="keywordtype">int</span> style,
00152         const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;yMap,
00153         <span class="keywordtype">int</span> from, <span class="keywordtype">int</span> to);
00154 
00155     virtual <span class="keywordtype">void</span> drawSymbols(QPainter *p, <a class="code" href="class_qwt_symbol.html">QwtSymbol</a> &amp;,
00156         const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;yMap,
00157         <span class="keywordtype">int</span> from, <span class="keywordtype">int</span> to);
00158 
00159     <span class="keywordtype">void</span> drawLines(QPainter *p,
00160         const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;yMap,
00161         <span class="keywordtype">int</span> from, <span class="keywordtype">int</span> to);
00162     <span class="keywordtype">void</span> drawSticks(QPainter *p,
00163         const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;yMap,
00164         <span class="keywordtype">int</span> from, <span class="keywordtype">int</span> to);
00165     <span class="keywordtype">void</span> drawDots(QPainter *p,
00166         const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;yMap,
00167         <span class="keywordtype">int</span> from, <span class="keywordtype">int</span> to);
00168     <span class="keywordtype">void</span> drawSteps(QPainter *p,
00169         const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;yMap,
00170         <span class="keywordtype">int</span> from, <span class="keywordtype">int</span> to);
00171     <span class="keywordtype">void</span> drawSpline(QPainter *p,
00172         const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;yMap);
00173 
00174     <span class="keywordtype">void</span> closePolyline(const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &amp;, const QwtDiMap &amp;,
00175         QPointArray &amp;) const;
00176 
00177     virtual <span class="keywordtype">void</span> curveChanged();
00178 
00179     <span class="keywordtype">int</span> verifyRange(<span class="keywordtype">int</span> &amp;i1, <span class="keywordtype">int</span> &amp;i2);
00180 
00181 protected:
00182     <a class="code" href="class_qwt_spline.html">QwtSpline</a> d_spx;
00183     <a class="code" href="class_qwt_spline.html">QwtSpline</a> d_spy;
00184 
00185 private:
00186     <a class="code" href="class_qwt_data.html">QwtData</a> *d_data;
00187 
00188     <span class="keywordtype">int</span> d_style;
00189     <span class="keywordtype">double</span> d_ref;
00190 
00191     QwtSymbol d_sym;
00192 
00193     QPen d_pen;
00194     QBrush d_brush;
00195     QString d_title;
00196 
00197     <span class="keywordtype">int</span> d_options;
00198     <span class="keywordtype">int</span> d_splineSize;
00199 };
00200 
<a name="l00205"></a><a class="code" href="class_qwt_curve.html#a10">00205</a> inline <span class="keywordtype">double</span> <a class="code" href="class_qwt_curve.html">QwtCurve</a>::x(<span class="keywordtype">int</span> i)<span class="keyword"> const </span>
00206 <span class="keyword"></span>{ 
00207     <span class="keywordflow">return</span> d_data-&gt;x(i); 
00208 }
00209 
<a name="l00214"></a><a class="code" href="class_qwt_curve.html#a11">00214</a> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="class_qwt_curve.html#a11">QwtCurve::y</a>(<span class="keywordtype">int</span> i)<span class="keyword"> const </span>
00215 <span class="keyword"></span>{ 
00216     <span class="keywordflow">return</span> d_data-&gt;<a class="code" href="class_qwt_data.html#a5">y</a>(i); 
00217 }
00218 
00219 <span class="preprocessor">#endif</span>
</div></pre><hr size="1"><address style="align: right;"><small>Generated on Tue Nov 16 21:12:20 2004 for Qwt User's Guide by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.8 </small></address>
</body>
</html>