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'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 Page</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="globals.html">File Members</a> | <a class="qindex" href="pages.html">Related 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 <qpen.h></span>
00014 <span class="preprocessor">#include <qstring.h></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<double>;
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 &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> &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>& operator= (<span class="keyword">const</span> <a class="code" href="class_qwt_curve.html">QwtCurve</a> &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<double> &xData, <span class="keyword">const</span> QwtArray<double> &yData);
00101 <span class="keywordtype">void</span> setData(<span class="keyword">const</span> QwtArray<QwtDoublePoint> &data);
00102 <span class="keywordtype">void</span> setData(<span class="keyword">const</span> <a class="code" href="class_qwt_data.html">QwtData</a> &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 &title);
00123 const QString &title() const;
00124
00125 <span class="keywordtype">void</span> setPen(const QPen &);
00126 const QPen &pen() const;
00127
00128 <span class="keywordtype">void</span> setBrush(const QBrush &);
00129 const QBrush &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> &s);
00138 const <a class="code" href="class_qwt_symbol.html">QwtSymbol</a>& 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> &xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &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 &title);
00149 <span class="keywordtype">void</span> copy(const <a class="code" href="class_qwt_curve.html">QwtCurve</a> &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> &xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &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> &,
00156 const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &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> &xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &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> &xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &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> &xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &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> &xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &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> &xMap, const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &yMap);
00173
00174 <span class="keywordtype">void</span> closePolyline(const <a class="code" href="class_qwt_di_map.html">QwtDiMap</a> &, const QwtDiMap &,
00175 QPointArray &) const;
00176
00177 virtual <span class="keywordtype">void</span> curveChanged();
00178
00179 <span class="keywordtype">int</span> verifyRange(<span class="keywordtype">int</span> &i1, <span class="keywordtype">int</span> &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->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-><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>
|