OpendTect-6_4  6.4
horflatvieweditor3d.h
Go to the documentation of this file.
1 #ifndef horflatvieweditor3d_h
2 #define horflatvieweditor3d_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  CopyRight: (C) dGB Beheer B.V.
8  Author: Umesh Sinha
9  Date: May 2010
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "uimpemod.h"
16 #include "uimpemod.h"
17 #include "trckeyzsampling.h"
18 #include "emposid.h"
19 #include "flatview.h"
20 
21 namespace Attrib { class SelSpec; }
22 namespace EM { class HorizonPainter3D; }
23 namespace FlatView { class AuxDataEditor; }
24 
25 class FlatDataPack;
26 class MouseEvent;
27 class MouseEventHandler;
28 
29 namespace MPE
30 {
31 
32 class EMTracker;
33 class EMSeedPicker;
34 
37 public:
39  const EM::ObjectID&);
41 
42  void setTrcKeyZSampling(const TrcKeyZSampling&);
43  void setPath(const TrcKeyPath&);
44  void setFlatPosData(const FlatPosData*);
45  void setSelSpec(const Attrib::SelSpec*,bool wva);
46 
47  FlatView::AuxDataEditor* getEditor() { return editor_; }
48  EM::HorizonPainter3D* getPainter() const { return horpainter_; }
49  void setMouseEventHandler(MouseEventHandler*);
50 
51  void enableLine(bool);
52  void enableSeed(bool);
53  void paint();
54  bool seedEnable() const;
55 
56  void setSeedPicking( bool yn ) {}
57  void setTrackerSetupActive(bool yn)
58  { trackersetupactive_ = yn; }
59 
61 
62 protected:
63 
64  void horRepaintATSCB( CallBacker* );
65  void horRepaintedCB( CallBacker* );
66 
67  void mouseMoveCB(CallBacker*);
68  void mousePressCB(CallBacker*);
69  void mouseReleaseCB(CallBacker*);
70  void doubleClickedCB(CallBacker*);
71  void movementEndCB(CallBacker*);
72  void removePosCB(CallBacker*);
73  void makePatchEnd(bool);
74 
75  void handleMouseClicked(bool dbl);
76  bool checkSanity(EMTracker&,const EMSeedPicker&,
77  bool& pickinvd) const;
78  bool prepareTracking(bool pickinvd,const EMTracker&,
79  EMSeedPicker&,const FlatDataPack&) const;
80  bool getPosID(const Coord3&,EM::PosID&) const;
81  bool doTheSeed(EMSeedPicker&,const Coord3&,
82  const MouseEvent&);
83  void sowingFinishedCB(CallBacker*);
84  void keyPressedCB(CallBacker*);
85  void polygonFinishedCB(CallBacker*);
86  void undo();
87  void redo();
88  EMSeedPicker* getEMSeedPicker() const;
89 
90  mStruct(uiMPE) Hor3DMarkerIdInfo
91  {
92  FlatView::AuxData* marker_;
93  int markerid_;
94  EM::SectionID sectionid_;
95  };
96 
97  void cleanAuxInfoContainer();
98  void fillAuxInfoContainer();
99  FlatView::AuxData* getAuxData(int markerid);
100  EM::SectionID getSectionID(int markerid);
101  void setupPatchDisplay();
102  void updatePatchDisplay();
103  void sowingModeCB(CallBacker*);
104  void releasePolygonSelectionCB(CallBacker*);
105  void preferColorChangedCB(CallBacker*);
106 
109 
117 
120  mutable bool dodropnext_;
121 
125 };
126 
127 } //namespace MPE
128 
129 
130 #endif
bool sowingmode_
Definition: horflatvieweditor3d.h:124
od_int16 SectionID
Definition: emposid.h:25
#define mExpClass(module)
Definition: commondefs.h:160
FlatView::AuxData * patchdata_
Definition: horflatvieweditor3d.h:122
od_int32 ObjectID
Definition: emposid.h:24
Class that represents non-bitmap data to be displayed in a flatviewer, such as markers, lines and more.
Definition: flatview.h:34
To be able to send and/or receive CallBacks, inherit from this class.
Definition: callback.h:272
const TrcKeyPath * curtkpath_
Definition: horflatvieweditor3d.h:114
const Attrib::SelSpec * vdselspec_
Definition: horflatvieweditor3d.h:115
Positioning of flat 'bulk' data. Only the 'x1' axis can be irregular.
Definition: flatposdata.h:26
TypeSet< EM::PosID > pointselections_
Definition: horflatvieweditor3d.h:123
MouseEventHandler * mehandler_
Definition: horflatvieweditor3d.h:112
#define mStruct(module)
Definition: commondefs.h:165
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
Is an identifier for each position in the earthmodel.
Definition: emposid.h:37
MPE stands for Model, Predict, Edit. Contains tracking and editing functions.
Definition: autotracker.h:32
bool trackersetupactive_
Definition: horflatvieweditor3d.h:118
Tracks EM objects.
Definition: emtracker.h:40
Handles adding of seeds and retracking of events based on new seeds. An instance of the class is usua...
Definition: emseedpicker.h:63
Definition: horflatvieweditor3d.h:35
bool dodropnext_
Definition: horflatvieweditor3d.h:120
Definition: callback.h:254
EM::HorizonPainter3D * horpainter_
Definition: horflatvieweditor3d.h:108
uiMPEEngine & uiMPE()
Access function for an instance (and normally the only instance) of MPE::uiMPEEngine.
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
const Attrib::SelSpec * wvaselspec_
Definition: horflatvieweditor3d.h:116
EM::ObjectID emid_
Definition: horflatvieweditor3d.h:107
FlatView::AuxDataEditor * getEditor()
Definition: horflatvieweditor3d.h:47
Definition: mouseevent.h:162
Editor for FlatView::AuxData. Allows the end-user to click-drag-release the points in data...
Definition: flatauxdataeditor.h:119
Notifier< HorizonFlatViewEditor3D > updseedpkingstatus_
Definition: horflatvieweditor3d.h:60
A cartesian coordinate in 3D space.
Definition: coord.h:72
void setTrackerSetupActive(bool yn)
Definition: horflatvieweditor3d.h:57
EM::HorizonPainter3D * getPainter() const
Definition: horflatvieweditor3d.h:48
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:25
Specifies an attribute selection (ID or output number of NN).
Definition: attribsel.h:45
TrcKey pickedpos_
Definition: horflatvieweditor3d.h:119
DataPack for flat data.
Definition: datapackbase.h:64
Represents a unique trace position in one of the surveys that OpendTect is managing.
Definition: trckey.h:28
void setSeedPicking(bool yn)
Definition: horflatvieweditor3d.h:56
FlatView::AuxDataEditor * editor_
Definition: horflatvieweditor3d.h:110
Definition: bitmap2rgb.h:18
Definition: mouseevent.h:73
3D horizon painter
Definition: emhorizonpainter3d.h:31
ObjectSet< Hor3DMarkerIdInfo > markeridinfos_
Definition: horflatvieweditor3d.h:111
Semblance Attribute.
Definition: attribdataholder.h:25
TrcKeyZSampling curcs_
Definition: horflatvieweditor3d.h:113

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