OpendTect  6.3
uicreate2dgrid.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  CopyRight: (C) dGB Beheer B.V.
7  Author: Nanne Hemstra
8  Date: December 2009
9 ________________________________________________________________________
10 
11 -*/
12 
13 
14 #include "uiemattribmod.h"
15 #include "uidialog.h"
16 #include "uigroup.h"
17 #include "grid2d.h"
18 
19 class BufferStringSet;
20 class TrcKeyZSampling;
21 class TrcKeySampling;
23 class uiCheckBox;
24 class uiGenInput;
25 class uiGrid2DMapObject;
26 class uiHorizonParSel;
27 class uiIOObjSel;
28 class uiLabel;
29 class uiPosSubSel;
30 class uiSeisSel;
31 class uiSelNrRange;
32 class uiSurveyMap;
33 
34 namespace Geometry { class RandomLine; }
35 
36 mExpClass(uiEMAttrib) ui2DGridLines : public uiGroup
38 public:
39  ~ui2DGridLines();
40 
41  const Grid2D* getGridLines() const { return grid_; }
42  virtual void updateRange();
43  virtual const Grid2D::Line* getBaseLine() const { return 0; }
44  virtual void getNrLinesLabelTexts(BufferString&,
45  BufferString&) const = 0;
46 
47  virtual bool fillPar(IOPar&) const;
48 
50 
51 protected:
52 
54 
55  virtual bool computeGrid() = 0;
56 
59 
62 };
63 
64 
67 public:
69  const TrcKeySampling&);
70 
71  bool fillPar(IOPar&) const;
72  void updateRange();
73  void getLineNames(BufferStringSet&) const;
74 
75 protected:
76 
77  bool computeGrid();
78  void paramsChgCB(CallBacker*);
79  void getNrLinesLabelTexts(BufferString&,
80  BufferString&) const;
81  void modeChg(CallBacker*);
82 
89 };
90 
91 
94 public:
96  const TrcKeySampling&,
97  const Geometry::RandomLine*);
99 
100  const Grid2D::Line* getBaseLine() const { return baseline_; }
101  bool fillPar(IOPar&) const;
102  void getLineNames(BufferStringSet&) const;
103 
104 protected:
105 
106  bool computeGrid();
107  void paramsChgCB(CallBacker*);
108  void getNrLinesLabelTexts(BufferString&,
109  BufferString&) const;
110 
114 
116 };
117 
118 
119 mExpClass(uiEMAttrib) uiCreate2DGrid : public uiDialog
121 public:
123  const Geometry::RandomLine*);
124  ~uiCreate2DGrid();
125 
126  bool fillPar();
127 
128 protected:
129 
130  uiGroup* createSeisGroup(const Geometry::RandomLine*);
131  uiGroup* createHorizonGroup();
132  uiGroup* createPreviewGroup();
133  void updatePreview(CallBacker*);
134 
139 
146 
151 
153 
154  void horCheckCB(CallBacker*);
155  void inpSelCB(CallBacker*);
156  void outSelCB(CallBacker*);
157  void srcSelCB(CallBacker*);
158  void subSelCB(CallBacker*);
159  void gridChgCB(CallBacker*);
160  void finaliseCB(CallBacker*);
161 
162  void fillSeisPar(IOPar&);
163  void fillHorPar(IOPar&);
164 
165  bool checkInput(IOPar&) const;
166  bool acceptOK();
167 };
Definition: uigroup.h:53
uiLabel * nrcrlinesfld_
Definition: uicreate2dgrid.h:145
#define mExpClass(module)
Definition: commondefs.h:157
Represents a grid of 2D lines in an Inl-Crl plane.
Definition: grid2d.h:25
Definition: uisurvmap.h:82
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
uiGrid2DMapObject * preview_
Definition: uicreate2dgrid.h:142
const Grid2D * getGridLines() const
Definition: uicreate2dgrid.h:41
uiGenInput * inlsfld_
Definition: uicreate2dgrid.h:85
uiHorizonParSel * horselfld_
Definition: uicreate2dgrid.h:148
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
Group to capture a user's position subselection wishes.
Definition: uipossubsel.h:31
Definition: randomlinegeom.h:30
uiLabel * nrinlinesfld_
Definition: uicreate2dgrid.h:144
uiGenInput * perdistfld_
Definition: uicreate2dgrid.h:113
uiSelNrRange * inlrgfld_
Definition: uicreate2dgrid.h:87
Grid2D::Line * baseline_
Definition: uicreate2dgrid.h:115
uiSelNrRange * crlrgfld_
Definition: uicreate2dgrid.h:88
uiGenInput * inlmodefld_
Definition: uicreate2dgrid.h:83
uiSeisSel * infld_
Definition: uicreate2dgrid.h:135
Definition: uiparent.h:24
uiGenInput * crlmodefld_
Definition: uicreate2dgrid.h:84
Set of BufferString objects.
Definition: bufstringset.h:25
uiGenInput * hornmfld_
Definition: uicreate2dgrid.h:149
Definition: uicreate2dgrid.h:36
Definition: uidialog.h:40
uiGenInput * sourceselfld_
Definition: uicreate2dgrid.h:138
uiGenInput * crlprefixfld_
Definition: uicreate2dgrid.h:58
Definition: uicreate2dgrid.h:65
Definition: uiiosurface.h:185
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:25
Definition: uiseissel.h:24
Notifier< ui2DGridLines > gridChanged
Definition: uicreate2dgrid.h:49
Line in an Inl-Crl plane.
Definition: grid2d.h:31
Definition: uisurvmap.h:103
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:32
General Input Element.
Definition: uigeninput.h:56
Lets user select a batch job dispatcher suited for the job.
Definition: uibatchjobdispatchersel.h:25
uiIOObjSel * rdlfld_
Definition: uicreate2dgrid.h:111
User Interface (UI) element for selection of IOObjs.
Definition: uiioobjsel.h:36
uiGenInput * inlprefixfld_
Definition: uicreate2dgrid.h:57
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:187
uiSeisSel * outfld_
Definition: uicreate2dgrid.h:136
const Grid2D::Line * getBaseLine() const
Definition: uicreate2dgrid.h:100
Selects range of trace numbers.
Definition: uiselsurvranges.h:61
virtual const Grid2D::Line * getBaseLine() const
Definition: uicreate2dgrid.h:43
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
ui2DGridLines * inlcrlgridgrp_
Definition: uicreate2dgrid.h:140
Definition: uilabel.h:22
ui2DGridLines * randlinegrdgrp_
Definition: uicreate2dgrid.h:141
TrcKeyZSampling & tkzs_
Definition: uicreate2dgrid.h:152
Grid2D * grid_
Definition: uicreate2dgrid.h:60
uiCheckBox * horcheckfld_
Definition: uicreate2dgrid.h:147
uiSurveyMap * previewmap_
Definition: uicreate2dgrid.h:143
const TrcKeySampling & hs_
Definition: uicreate2dgrid.h:61
uiBatchJobDispatcherSel * batchfld_
Definition: uicreate2dgrid.h:150
Definition: uicreate2dgrid.h:92
Definition: uibutton.h:130
uiPosSubSel * bboxfld_
Definition: uicreate2dgrid.h:137
uiGenInput * pardistfld_
Definition: uicreate2dgrid.h:112
Definition: arraytesselator.h:19
Definition: uicreate2dgrid.h:119
uiGenInput * crlsfld_
Definition: uicreate2dgrid.h:86

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2017