38 template <
class T>
class Array1D;
39 namespace Math {
class Expression; }
113 void drawData(
const AxisData&,
bool y2,
114 bool rempts =
false);
118 void prepareItems(
bool y2);
122 void setItem(uiGraphicsItem*,
bool y2,
const uiPoint&);
125 bool removesel=
false,
126 bool isy2=
false,
int areatyp=0,
131 bool removesel=
false);
132 void drawDensityPlot(
bool removesel=
false);
136 void removeSelectionItems();
139 { selectable_ = yn; }
141 {
return selectable_; }
142 void setSelectable(
bool y1,
bool y2 );
143 void removeSelections(
bool relfrmselgrp =
true);
144 void deleteSelections();
148 uiGraphicsItem*,
bool,
const AxisData&,
150 bool checkSelArea(
const SelectionArea&)
const;
152 {
return axisData(ax).autoscalepars_; }
154 {
return axisData(ax).axis_; }
156 {
return axisData(ax).axis_; }
158 {
return y1 ? lsy1_ : lsy2_; }
161 {
return ax ? (ax == 2 ? y2_ : y_) : x_; }
163 {
return ax ? (ax == 2 ? y2_ : y_) : x_; }
179 { mathobjstr_ = str; }
184 { modcolidxs_ = ids; }
205 void drawContent(
bool withaxis =
true );
206 void drawColTabItem(
bool isy1);
207 bool isY2Shown()
const;
209 {
return isy1selectable_; }
211 {
return isy2selectable_; }
214 void setShowY3(
bool);
215 void setShowY4(
bool);
217 void setDensityPlot(
bool yn,
bool showy2);
219 {
return rectangleselection_; }
221 { rectangleselection_ = yn; }
223 SelectionArea& getCurSelArea();
224 void setSelArea(
const SelectionArea&,
int selgrpidx);
225 bool getSelArea(SelectionArea&,
int selareaid);
228 {
return selgrpset_; }
229 int selAreaSize()
const;
231 void reDrawSelections();
236 int getNewSelAreaID()
const;
237 bool isSelAreaValid(
int id)
const;
238 int getSelGrpIdx(
int selareaid)
const;
241 int totalNrItems()
const;
242 void getRandRowids();
255 void setUserDefDrawType(
bool dodrw,
bool isy2,
258 void drawUserDefPolyLine(
bool);
260 void updateOverlayMapper(
bool isy1);
270 float getVal(
int colid,
int rid)
const;
345 void setWorldSelArea(
int);
346 void reDrawSelArea();
Convenient base class to carry axis data: 1) the AxisHandler which handles the behaviour and position...
Definition: uiaxisdata.h:28
Array1D ( Subclass of ArrayND ) is a one dimensional array.
Definition: arraynd.h:97
bool isRectSelection() const
Definition: uidatapointsetcrossplot.h:218
DataPointSet & dps_
Definition: uidatapointsetcrossplot.h:278
#define mExpClass(module)
Definition: commondefs.h:157
TypeSet< Color > & y2grpColors()
Definition: uidatapointsetcrossplot.h:199
const LinStats2D & linStats(bool y1=true) const
Definition: uidatapointsetcrossplot.h:157
void setColTab(const ColTab::Sequence &ctseq)
Definition: uidatapointsetcrossplot.h:201
uiString trmsg_
Definition: uidatapointsetcrossplot.h:282
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
void setSceneSelectable(bool yn)
Definition: uidatapointsetcrossplot.h:138
BufferString & y2rmserr_
Definition: uidatapointsetcrossplot.h:175
FixedString Setup()
Definition: keystrs.h:113
BufferString & userdefy1str_
Definition: uidatapointsetcrossplot.h:171
uiColTabItem * y2overlayctitem_
Definition: uidatapointsetcrossplot.h:294
const ColTab::Mapper & y3Mapper() const
Definition: uidatapointsetcrossplot.h:265
bool showY3() const
Definition: uidatapointsetcrossplot.h:212
TypeSet< uiWorldPoint > y2userdefpts_
Definition: uidatapointsetcrossplot.h:329
Set of data points with group selection.
Definition: datapointset.h:47
Timer & timer_
Definition: uidatapointsetcrossplot.h:304
uiPoint startpos_
Definition: uidatapointsetcrossplot.h:334
bool drawy2_
Definition: uidatapointsetcrossplot.h:314
const Setup & setup() const
Definition: uidatapointsetcrossplot.h:69
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
A series of color control points able to give an (interpolated) color for every position [0...
Definition: coltabsequence.h:37
Steepness and intercept.
Definition: linear.h:25
uiRectItem * selectionrectitem_
Definition: uidatapointsetcrossplot.h:285
bool drawy1userdefpolyline_
Definition: uidatapointsetcrossplot.h:312
void setMathObjStr(const char *str)
Definition: uidatapointsetcrossplot.h:178
Definition: uiaxisdata.h:38
uiGraphicsItemGroup * y2ptitems_
Definition: uidatapointsetcrossplot.h:287
TypeSet< uiWorldPoint > y1userdefpts_
Definition: uidatapointsetcrossplot.h:328
TypeSet< RowCol > selrowcols_
Definition: uidatapointsetcrossplot.h:325
bool selectable_
Definition: uidatapointsetcrossplot.h:307
Definition: uigraphicsitemimpl.h:197
ObjectSet< SelectionArea > selareaset_
Definition: uidatapointsetcrossplot.h:336
int RowID
Definition: datapointset.h:51
void setCellSize(int sz)
Definition: uidatapointsetcrossplot.h:246
LinStats2D & lsy2_
Definition: uidatapointsetcrossplot.h:303
bool selrowisy2_
Definition: uidatapointsetcrossplot.h:333
Handles an axis on a plot.
Definition: uiaxishandler.h:50
uiPolyLineItem * y2userdefpolylineitm_
Definition: uidatapointsetcrossplot.h:292
int ColID
Definition: datapointset.h:52
bool showy4_
Definition: uidatapointsetcrossplot.h:306
AxisData x_
Definition: uidatapointsetcrossplot.h:109
bool mousepressed_
Definition: uidatapointsetcrossplot.h:308
bool showy3_
Definition: uidatapointsetcrossplot.h:305
TypeSet< uiDataPointSet::DColID > modcolidxs_
Definition: uidatapointsetcrossplot.h:332
bool selRowIsY2() const
Definition: uidatapointsetcrossplot.h:87
Math::Expression * mathObj() const
Definition: uidatapointsetcrossplot.h:181
LinePars & userdefy1lp_
Definition: uidatapointsetcrossplot.h:168
uiGraphicsItemGroup * yptitems_
Definition: uidatapointsetcrossplot.h:286
bool drawuserdefline_
Definition: uidatapointsetcrossplot.h:311
Setup & setup()
Definition: uidatapointsetcrossplot.h:70
DataPointSet crossplotter.
Definition: uidatapointsetcrossplot.h:45
Definition: uistring.h:88
Definition: uiparent.h:24
linear stats in 2D.
Definition: linear.h:73
float plotperc_
Definition: uidatapointsetcrossplot.h:315
void setModifiedColIds(const TypeSet< uiDataPointSet::DColID > &ids)
Definition: uidatapointsetcrossplot.h:182
Maps data values to color sequence positions: [0,1].
Definition: coltabmapper.h:33
Notifier< uiDataPointSetCrossPlotter > dataChgd
Definition: uidatapointsetcrossplot.h:80
AxisData::AutoScalePars & autoScalePars(int ax)
Definition: uidatapointsetcrossplot.h:151
bool isy1selectable_
Definition: uidatapointsetcrossplot.h:338
int nrYSels() const
Definition: uidatapointsetcrossplot.h:195
DataPointSet & dps()
Definition: uidatapointsetcrossplot.h:188
uiDataPointSetCrossPlotter & cp_
Definition: uidatapointsetcrossplot.h:103
BufferString & y1rmserr_
Definition: uidatapointsetcrossplot.h:174
int cellsize_
Definition: uidatapointsetcrossplot.h:321
Setup setup_
Definition: uidatapointsetcrossplot.h:279
bool isADensityPlot() const
Definition: uidatapointsetcrossplot.h:216
uiGraphicsItemGroup * selpolyitems_
Definition: uidatapointsetcrossplot.h:289
const ColTab::Sequence & y4CtSeq() const
Definition: uidatapointsetcrossplot.h:268
RefMan< ColTab::Mapper > y4mapper_
Definition: uidatapointsetcrossplot.h:301
uiAxisHandler * axisHandler(int ax)
Definition: uidatapointsetcrossplot.h:153
AxisData y2_
Definition: uidatapointsetcrossplot.h:111
bool showY4() const
Definition: uidatapointsetcrossplot.h:213
Definition: uidatapointsetcrossplot.h:92
DataPointSet::ColID colid_
Definition: uidatapointsetcrossplot.h:104
int curselarea_
Definition: uidatapointsetcrossplot.h:319
Definition: uigraphicsitem.h:154
int curgrp_
Definition: uidatapointsetcrossplot.h:316
TypeSet< Color > y2grpcols_
Definition: uidatapointsetcrossplot.h:327
DataPointSet::RowID DRowID
Definition: uidatapointset.h:49
ConstRefMan< ColTab::Sequence > y4ctab_
Definition: uidatapointsetcrossplot.h:298
uiLineItem * regrlineitm_
Definition: uidatapointsetcrossplot.h:290
TypeSet< Color > y1grpcols_
Definition: uidatapointsetcrossplot.h:326
encapsulates the read-access-only part of strings in OD.
Definition: odstring.h:29
DataPointSet::RowID selrow_
Definition: uidatapointsetcrossplot.h:323
Definition: uidatapointsetcrossplot.h:49
LinePars & userdefy2lp_
Definition: uidatapointsetcrossplot.h:169
bool isSceneSelectable() const
Definition: uidatapointsetcrossplot.h:140
LinStats2D & lsy1_
Definition: uidatapointsetcrossplot.h:302
Math::Expression * mathobj_
Definition: uidatapointsetcrossplot.h:280
Data Point Set Cross Plotter Main window.
Definition: uidatapointsetcrossplotwin.h:26
Definition: uigraphicsitemimpl.h:259
void setRectSelection(bool yn)
Definition: uidatapointsetcrossplot.h:220
int curGroup() const
Definition: uidatapointsetcrossplot.h:230
AxisData & axisData(int ax)
Definition: uidatapointsetcrossplot.h:160
TypeSet< Color > & y1grpColors()
Definition: uidatapointsetcrossplot.h:198
#define mDefSetupMemb(typ, memb)
Definition: commondefs.h:129
bool rectangleselection_
Definition: uidatapointsetcrossplot.h:309
const uiDataPointSet & uidps() const
Definition: uidatapointsetcrossplot.h:190
bool multclron_
Definition: uidatapointsetcrossplot.h:340
const DataPointSet::ColID mincolid_
Definition: uidatapointsetcrossplot.h:322
bool isY1Selectable() const
Definition: uidatapointsetcrossplot.h:208
void setCurSelGrp(int grp)
Definition: uidatapointsetcrossplot.h:233
Definition: uicoltabgraphicsitem.h:24
const TypeSet< int > & modifiedColIds() const
Definition: uidatapointsetcrossplot.h:185
Notifier< uiDataPointSetCrossPlotter > selectionChanged
Definition: uidatapointsetcrossplot.h:83
IdxPair used for its row() and col().
Definition: rowcol.h:23
Notifier< uiDataPointSetCrossPlotter > removeRequest
Definition: uidatapointsetcrossplot.h:82
Parsed Math expression.
Definition: mathexpression.h:31
Definition: uigraphicsitemimpl.h:219
Provides a canvas where a uiRGBArray is pre-drawn.
Definition: uirgbarraycanvas.h:34
bool isY2Selectable() const
Definition: uidatapointsetcrossplot.h:210
const ObjectSet< SelectionGrp > & selectionGrps() const
Definition: uidatapointsetcrossplot.h:227
uiColTabItem * y1overlayctitem_
Definition: uidatapointsetcrossplot.h:293
const ColTab::Mapper & y4Mapper() const
Definition: uidatapointsetcrossplot.h:266
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
Array1D< char > * y2rowidxs_
Definition: uidatapointsetcrossplot.h:331
Array1D< char > * yrowidxs_
Definition: uidatapointsetcrossplot.h:330
int y4Colid() const
Definition: uidatapointsetcrossplot.h:264
int curselgrp_
Definition: uidatapointsetcrossplot.h:320
Edit DataPointSet.
Definition: uidatapointset.h:42
void setMultiColMode(bool yn)
Definition: uidatapointsetcrossplot.h:243
uiGraphicsItemGroup * selrectitems_
Definition: uidatapointsetcrossplot.h:288
int nrY2Sels() const
Definition: uidatapointsetcrossplot.h:196
Notifier< uiDataPointSetCrossPlotter > mouseReleased
Definition: uidatapointsetcrossplot.h:79
Notifier< uiDataPointSetCrossPlotter > pointsSelected
Definition: uidatapointsetcrossplot.h:81
int selyitems_
Definition: uidatapointsetcrossplot.h:317
uiPolyLineItem * y1userdefpolylineitm_
Definition: uidatapointsetcrossplot.h:291
bool drawy2userdefpolyline_
Definition: uidatapointsetcrossplot.h:313
Notifier< uiDataPointSetCrossPlotter > lineDrawn
Definition: uidatapointsetcrossplot.h:78
Color is an RGB color object, with a transparancy. The storage is in a 4-byte integer, similar to Qt.
Definition: color.h:24
int curSelGrp() const
Definition: uidatapointsetcrossplot.h:234
CNotifier< uiDataPointSetCrossPlotter, Interval< float > > coltabRgChanged
Definition: uidatapointsetcrossplot.h:85
const TypeSet< RowCol > & getSelectedCells()
Definition: uidatapointsetcrossplot.h:193
bool isdensityplot_
Definition: uidatapointsetcrossplot.h:310
ObjectSet< SelectionGrp > & selectionGrps()
Definition: uidatapointsetcrossplot.h:226
uiDataPointSet & uidps_
Definition: uidatapointsetcrossplot.h:277
DataPointSet::RowID selRow() const
Definition: uidatapointsetcrossplot.h:86
int y3Colid() const
Definition: uidatapointsetcrossplot.h:263
const DataPointSet & dps() const
Definition: uidatapointsetcrossplot.h:187
int sely2items_
Definition: uidatapointsetcrossplot.h:318
Timer class.
Definition: timer.h:24
const AxisData & axisData(int ax) const
Definition: uidatapointsetcrossplot.h:162
Interval< int > usedxpixrg_
Definition: uidatapointsetcrossplot.h:324
const OD::String & mathObjStr() const
Definition: uidatapointsetcrossplot.h:180
BufferString mathobjstr_
Definition: uidatapointsetcrossplot.h:281
AxisData y_
Definition: uidatapointsetcrossplot.h:110
RefMan< ColTab::Mapper > ctmapper_
Definition: uidatapointsetcrossplot.h:299
int y3colid_
Definition: uidatapointsetcrossplot.h:274
RefMan< ColTab::Mapper > y3mapper_
Definition: uidatapointsetcrossplot.h:300
ConstRefMan< ColTab::Sequence > ctab_
Definition: uidatapointsetcrossplot.h:296
BufferString & userdefy2str_
Definition: uidatapointsetcrossplot.h:172
Definition: mouseevent.h:72
ObjectSet< SelectionGrp > selgrpset_
Definition: uidatapointsetcrossplot.h:337
bool isMultiColMode() const
Definition: uidatapointsetcrossplot.h:245
Side
Definition: uigeom.h:44
int y4colid_
Definition: uidatapointsetcrossplot.h:275
const uiAxisHandler * axisHandler(int ax) const
Definition: uidatapointsetcrossplot.h:155
Definition: uigraphicsitemimpl.h:109
CNotifier< uiDataPointSetCrossPlotter, bool > drawTypeChanged
Definition: uidatapointsetcrossplot.h:84
uiDataPointSet & uidps()
Definition: uidatapointsetcrossplot.h:191
bool isy2selectable_
Definition: uidatapointsetcrossplot.h:339
uiPolygonItem * selectionpolygonitem_
Definition: uidatapointsetcrossplot.h:284
int cellSize() const
Definition: uidatapointsetcrossplot.h:247
void setTRMsg(const uiString &msg)
Definition: uidatapointsetcrossplot.h:239
ConstRefMan< ColTab::Sequence > y3ctab_
Definition: uidatapointsetcrossplot.h:297
const ColTab::Sequence & y3CtSeq() const
Definition: uidatapointsetcrossplot.h:267