OpendTect  6.3
mpefssflatvieweditor.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  CopyRight: (C) dGB Beheer B.V.
7  Author: Umesh Sinha
8  Date: Jan 2010
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uimpemod.h"
14 #include "geometry.h"
16 
17 #include "emposid.h"
18 
19 class FlatPosData;
20 class MouseEventHandler;
21 
22 namespace EM { class FaultStickPainter; }
23 namespace FlatView { class AuxDataEditor; }
24 
25 namespace MPE
26 {
27 
30 {
31 public:
32  FaultStickSetFlatViewEditor(FlatView::AuxDataEditor*,
33  const EM::ObjectID&);
34  ~FaultStickSetFlatViewEditor();
35 
36  void setMouseEventHandler(MouseEventHandler*);
37  void updateActStkContainer();
38 
39  void setTrcKeyZSampling(const TrcKeyZSampling&);
40  void setPath(const TrcKeyPath&);
41  void setRandomLineID(int rdlidx);
42  void setFlatPosData(const FlatPosData*);
43  void drawFault();
44  void enableLine(bool);
45  void enableKnots(bool);
46 
47  void set2D(bool yn);
48  void setGeomID(Pos::GeomID);
49 
50  TypeSet<int>& getTrcNos();
51  TypeSet<float>& getDistances();
52  TypeSet<Coord>& getCoords();
53 
54 protected:
55 
56  void fssRepaintATSCB(CallBacker*);
57  void fssRepaintedCB(CallBacker*);
58 
59  void seedMovementStartedCB(CallBacker*);
60  void seedMovementFinishedCB(CallBacker*);
61  void removeSelectionCB(CallBacker*);
62 
63  void mouseMoveCB(CallBacker*);
64  void mousePressCB(CallBacker*);
65  void mouseReleaseCB(CallBacker*);
66  void doubleClickedCB(CallBacker*);
67  void sowingFinishedCB(CallBacker*);
68 
69  mStruct(uiMPE) StkMarkerIdInfo
70  {
71  int markerid_;
72  int stickid_;
73  };
74 
75  void cleanActStkContainer();
76  void fillActStkContainer();
77  int getStickId(int markerid) const;
78 
79  bool getMousePosInfo(
80  const Geom::Point2D<int>& mousepos,
81  Coord3& worldpos,int* trcnr=0) const;
82  Coord3 getScaleVector() const;
84  Coord3 getNormal(const Coord3* mousepos=0) const;
85 
86  const TrcKeyPath* path_;
87  int rdlid_;
88 
93 
99 };
100 
101 } //namespace MPE
#define mExpClass(module)
Definition: commondefs.h:157
od_int32 ObjectID
Definition: emposid.h:22
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
Positioning of flat &#39;bulk&#39; data. Only the &#39;x1&#39; axis can be irregular.
Definition: flatposdata.h:24
ObjectSet< StkMarkerIdInfo > markeridinfo_
Definition: mpefssflatvieweditor.h:95
#define mStruct(module)
Definition: commondefs.h:162
Is an identifier for each position in the earthmodel.
Definition: emposid.h:35
int activestickid_
Definition: mpefssflatvieweditor.h:96
MPE stands for Model, Predict, Edit. Contains tracking and editing functions.
Definition: autotracker.h:30
FlatView::AuxDataEditor * editor_
Definition: mpefssflatvieweditor.h:94
MouseEventHandler * meh_
Definition: mpefssflatvieweditor.h:97
3D point or vector
Definition: commontypes.h:57
uiMPEEngine & uiMPE()
Access function for an instance (and normally the only instance) of MPE::uiMPEEngine.
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:32
EM::PosID mousepid_
Definition: mpefssflatvieweditor.h:98
bool doubleclicked_
Definition: mpefssflatvieweditor.h:92
Definition: mouseevent.h:166
Editor for FlatView::AuxData. Allows the end-user to click-drag-release the points in data...
Definition: flatauxdataeditor.h:117
Index_Type GeomID
Definition: commontypes.h:48
Fault stick painter.
Definition: emfaultstickpainter.h:33
bool seedhasmoved_
Definition: mpefssflatvieweditor.h:90
const TrcKeyPath * path_
Definition: mpefssflatvieweditor.h:86
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:23
Definition: mpefssflatvieweditor.h:28
bool makenewstick_
Definition: mpefssflatvieweditor.h:91
Definition: bitmap2rgb.h:15
int rdlid_
Definition: mpefssflatvieweditor.h:87
EM::FaultStickPainter * fsspainter_
Definition: mpefssflatvieweditor.h:89

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